wsrp-interop message
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]
Subject: Re: [wsrp-interop] cloneBeforeWrite when using ProducerOfferedPortlets
- From: Rich Thompson <richt2@us.ibm.com>
- To: wsrp-interop@lists.oasis-open.org
- Date: Fri, 27 Jun 2003 14:57:54 -0400
The purpose of this flag (has UserSpecificState)
is for those cases where a portlet always has state specific to the user
(e.g. an email portlet). It is purely an optimization allowing the Consumer
to clone the portlet for the user on first view of a page containing it.
I would agree that using a value of
cloneBeforeWrite for portletStateChange (the new name) would be better
when using POPs. There was some discussion about whether this type of case
should have its own fault message (CloneRequired), but the decision was
that it would be rare enough that OperationFailed or PortletStateChangeRequired
would be suffice.
I would note that the one down side
of throwing the PortletStateChangeRequired fault rather than cloning the
POP is that the Consumer is unable to associate the cloned portlet with
any current session while the Producer can do such a change while doing
the clone (one of the big advantages of the clone-on-write semantics).
Rich Thompson
OASIS WSRP TC Chair
Interaction Middleware and Standards for Portal Server
IBM T.J. Watson Research Center / Yorktown Heights, NY
Phone: (914) 945-3225 email: richt2@us.ibm.com
| David Ward <david.ward@oracle.com>
06/27/2003 01:09 PM
|
To:
Richard Jacob <richard.jacob@de.ibm.com>
cc:
wsrp-interop@lists.oasis-open.org
Subject:
Re: [wsrp-interop] cloneBeforeWrite
when using ProducerOfferedPortlets |
Shouldn't you be setting state change to "cloneBeforeWrite"
in this case? As far as I understand, the producer-offered entities are
read-only.
I still have questions about the meaning of hasUserSpecificState from Andre's
testing. Does hasUserSpecificState=false mean the consumer should never
have to call cloneEntity() or send "cloneBeforeWrite"? If not,
then what is the purpose of this flag?
Andre's portlets are returning hasUserSpecificState=false, even though
they expect to be able to update state and hence clone new copies of the
producer offered entity.
Regards
Dave
Richard Jacob wrote:
Hi,
the Oracle producer throws a StateChangeRequiredFault if our consumer uses
a producer offered portlet (POP) and wants to change the persistent state
in edit mode of portlet E:0:default for example.
We have the InteractionParams.stateChange set to "readwrite"
allowing the
producer to write.
I think the flag hasUserSpecificState in PortletDescription encourages
the
consumer to clone, but it is not required to clone.
I think if a consumer using a POP allows the portlet to change its state,
the producer should perform a clone before write here.
The spec says for the PortletStateChangeRequiredFault: Used when
a Portlet
needs to modify its persistent state, but has been prevented from doing
so.
So my understanding is that this fault should only be thrown if the
consumer indicates "readonly" to the portlet but the portlet
needs to
change its persistent state on an action.
If we interpreted the flag hasUserSpecificState=true as the requirement
to
clone, producers not exposing the PortletManagement interface could never
have portlets that change their persistent state.
What do people think?
Mit freundlichen Gruessen / best regards,
Richard Jacob
______________________________________________________
IBM Lab Boeblingen, Germany
Dept.8288, WebSphere Portal Server Development
Phone: ++49 7031 16-3469 - Fax: ++49 7031 16-4888
Email: mailto:richard.jacob@de.ibm.com
You may leave a Technical Committee at any time by visiting http://www.oasis-open.org/apps/org/workgroup/wsrp-interop/members/leave_workgroup.php
--
David Ward
Principal Software Engineer
Oracle Portal
| Oracle European Development Centre
520 Oracle Parkway
Thames Valley Park
Reading
Berkshire RG6 1RA
UK
|
|
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
| [List Home]