Eilon wrote (and I
condense...):
[...]
> Would you
find the following, radically simplified,
suggestion for an operation
>
name intrusive:
>
createPortlet
> Along
those lines, a portal would call the operation createPortlet, would get back a
> (persistent)
portletID and then
(optionally) call createSession with the
portletID.
[...]
> 2. The ability to create a
persistent key seems to be only under the scope of
> WSRP and not under WSIA. WSIA supports
a persistent key to
create sessions and
> to subsequent operations, but wouldn't
probably deal with how they are
created
>
and
management (with all the associated issues that are well
described in Mike's
> latest summary). Hence, the motivation to
use a portal-specific
name.
So now Gil
writes:
It seems that Michael, Eilon, and
myself believe that the createEntity/Template/Portlet operation is particular to
WSRP (Rich, I even remember adding the "templateKey" thingie as a shot in the
dark to where WSRP is going - it seems the shot
missed!).
I suggest then, dropping this from the
joint interface subcommitee, and leaving it in the hands of the WSRP. Having
said that, we must be able to support some type of connection between
the template/entity/portlet and the "session handle", so what I propose is that
the createSession/Instance operation (outlined above) will accept an
unspecified "bindingKey", i.e.:
sessionHandle/ID =
createSession/Instance(bindingKey).
The "bindingKey" will be an opaque
string to be defined either by the WSIA service, or defined by specs above WSIA
(i.e. WSRP). One can argue that this is similar to JDBC's "connection URL" (in
getConnection) which is an opaque string specified when "connecting". WSRP could
also use it to specify the "sub-service/portlet" of the container, if WSRP
decides to go the heterogenous.
My suggestion is to drop the
createEntity/Template/Portlet, and leave:
sessionHandle =
createSession(bindingKey) [bindingKey is an opaqueString, which will be used in
the future by WSRP binding specifications]
getMarkup/performAction....(sessionHandle, ...) [i.e. all operations
within the session will receive the sessionHandle]
destroySession(sessionHandle)
And, as Michael suggested, resolve
timeout and implict session creation and deletion issues
ASAP.
(I specifically dropped the
"propertyList" arguments as they are not the issue here, but that doesn't mean
that I don't support them).