Since I raised this, I will pick it up.
Subbu
Rich Thompson wrote:
>
> This is a much narrower question, but definitely worthy of addressing as
> we approach v2. Any volunteers to draft a Feature Proposal for
> retrieving a single, but full portlet description (i.e. independent of
> UserContext)?
>
> Rich
>
>
> *"Coco, Christopher" <>*
>
> 06/03/2004 08:44 PM
>
>
> To
> "Michael Freedman" <>,
> <>
> cc
>
> Subject
> RE: [wsrp-interfaces] Questions regarding getPortletDescription()
>
>
>
>
>
>
>
>
> I wondered the same, but it was agreed some time ago that a null
> userContextKey was
> meant to be a guest user and the Producer would respond as such.
>
> Christopher
> -----Original Message-----*
> From:* Michael Freedman [mailto:]*
> Sent:* Thursday, June 03, 2004 5:35 PM*
> To:* *
> Subject:* Re: [wsrp-interfaces] Questions regarding getPortletDescription()
>
> I forget, can the consumer pass a null userContext to
> getPortletDescription to "guarantee" the same semantic as calling
> getServiceDescription? If a userContext must be passed we may have just
> invented a difference in the meaning of passing a null userContextKey vs
> wsrp:minimal.
> -Mike-
>
> Coco, Christopher wrote:
> Like Subbu said, right now if a Consumer wants to reread the portlet
> description
> for a POP, they have to get the entire ServiceDescription and search for
> the POP's
> portlet description. While it seems nice to say that we expect the
> Consumer to
> cache the ServiceDescription and thus not request it very often, the use
> cases
> we are talking about are not when the Consumer just wants the
> ServiceDescription
> for the sake of getting the ServiceDescription. There are more times
> when the
> Consumer wants to update only some subset of POPs metadata, and because
> of the
> issues Scott has raised (the getPortletDescription() is sensitive to the
> UserContext),
> if the Consumer wants the "full" POP description it must request the entire
> ServiceDescription again as this is assured to have the "full" POP
> description.
>
> Getting the "full" POP description from the ServiceDescription seems to
> be inefficient
> and it would be better if the Consumer could request the "full" POP
> description by
> using the getPortletDescription() call (i.e. irrespective of a user).
>
> Christopher
> -----Original Message-----*
> From:* Michael Freedman [_mailto:[email protected]_]*
> Sent:* Thursday, June 03, 2004 4:07 PM*
> To:* -open.org_
> <mailto:>*
> Subject:* Re: [wsrp-interfaces] Questions regarding getPortletDescription()
>
> First off on the question of "This makes me wonder if I should
> completely ignore what’s found in the ServiceDescription to avoid using
> incorrect information." I would advise the opposite.
> getServiceDescription() defines the complete function of a portlet. If
> you are choosing to pass the additional context information to
> getPortletDescription() then you are in effect checking with the
> producer what subset of this complete function this particular context
> can use. Because all producers must be defensive an assume they will be
> called to do things in inappropriate contexts a consumer can safely try
> any operation directly [without checking first] and then deal with the
> resulting fault/denial. And given getPortletDescription is an extra
> roundtrip in general its more advisable to not call it and just try the
> operation. That being said there may be some circumstances in some
> consumers where its considered important to prevent the user from
> invoking function that isn't available -- for example one might want to
> restrict the view of a toolbox of portlets that can be added to a "page"
> to only those portlets this user can access/see. This feature allows us
> to meet this type of [hopefully limited] use case.
>
> As for the comments about cumbersome, can you describe the use cases
> that are making this cumbersome? I recall we expected the consumer
> would [generally] be caching this information hence
> getServiceDescription would not be called very often.
> -Mike-
>
> Coco, Christopher wrote:
> I agree that this process is cumbersome and not necessarily desirable.
>
> Christopher
>
> -----Original Message-----
> From: Subbu Allamaraju [_mailto:[email protected]_]
> Sent: Thursday, June 03, 2004 2:21 PM
> To: -open.org_
> <mailto:>
> Subject: Re: [wsrp-interfaces] Questions regarding
> getPortletDescription()
>
>
> This is a good point, and I agree that there is scope for confusion.
>
> On a related note, based on the implementation experience, I wish there
> is a getPortletDescription operation on the Service Description
> interface. Right now, if a consumer wants to find out the description of
> a POP, it must get the complete service description and look for the
> particular portlet. This is cumbersome for both the consumer and the
> producer. Did we ever discuss this during 1.0?
>
> Regards,
>
> Subbu
>
> Goldstein, Scott wrote:
>
> Thanks, again, for the info Rich.
>
>
>
> It might be worth considering changing the language of the
> getPortletDescription() section to clarify expected behavior. The
> existence of the UserContext parameter together with the statements:
>
>
>
> “This operation allows a Producer to provide information about the
> Portlets it offers in a contextsensitive
>
> manner.”
>
>
>
> and
>
>
>
> “Consumers may choose to alter how they interact with a Portlet based on
> the metadata
>
> contained in the returned PortletDescriptionResponse.”
>
>
>
> leads me to believe, as a Consumer developer, that the content returned
> from this operation will be different than that in the
> ServiceDescription. This makes me wonder if I should completely ignore
> what’s found in the ServiceDescription to avoid using incorrect information.
>
>
>
> Scott
>
>
>
>
>
>
>
> ------------------------------------------------------------------------
>
> *From:* Rich Thompson [_mailto:.com_]
> *Sent:* Thursday, June 03, 2004 3:26 AM
> *To:* -open.org_
> <mailto:>
> *Subject:* RE: [wsrp-interfaces] Questions regarding getPortletDescription()
>
>
>
>
> Agreed.
>
> Rich
>
> *"Coco, Christopher" _<>_
> <mailto:>*
>
> 06/02/2004 08:10 PM
>
>
>
> To
>
>
>
> "Goldstein, Scott" _<>_
> <mailto:>, Rich
> Thompson/Watson/IBM@IBMUS, _<>_
> <mailto:>
>
> cc
>
>
>
>
>
> Subject
>
>
>
> RE: [wsrp-interfaces] Questions regarding getPortletDescription()
>
>
>
>
>
>
>
>
>
>
>
>
> From my understanding, as long as the call is for a POP as CCPs aren't
> listed in the ServiceDescription.
>
> Christopher
> -----Original Message-----*
> From:* Goldstein, Scott *
> Sent:* Wednesday, June 02, 2004 5:08 PM*
> To:* Rich Thompson; *_
> <mailto:*>
> Subject:* RE: [wsrp-interfaces] Questions regarding getPortletDescription()
>
> Thanks for the info, Rich.
>
> So, just to be completely clear, in the case that the metadata is not
> updated in any fashion by the producer, if I were to call
> getPortletDescription() with a UserContext containing all of the
> Producers’ user categories, I would be guaranteed to receive the same
> structure as if I had called getServiceDescription(). Correct?
>
> Scott
>
>
>
>
>
> ------------------------------------------------------------------------
>
>
> *From:* Rich Thompson [_mailto:.com_] *
> Sent:* Wednesday, June 02, 2004 8:57 AM*
> To:* *_
> <mailto:*>
> Subject:* Re: [wsrp-interfaces] Questions regarding getPortletDescription()
>
>
> Thanks for your persistence ... sometimes as we get busy we hope that
> others will supply the answers :}
>
> The data in GetPortletDescriptionResponse is the same that is included
> in the array returned by getServiceDescription() with a few caveats. The
> data is allowed to change (portlet data updated, user access rights,
> etc) and most Producers will only return data from
> getServiceDescription() for their POPs while getPortletDescription() can
> be invoked against any portletHandle.
>
> Rich
>
> *"Goldstein, Scott" _<>_
> <mailto:>*
>
> 06/02/2004 11:31 AM
>
>
>
>
>
> To
>
>
>
> _<>_
> <mailto:>
>
> cc
>
>
>
>
>
> Subject
>
>
>
> [wsrp-interfaces] Questions regarding getPortletDescription()
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
>
> I haven’t received a reply to my message I sent out last week, so I
> thought I would try to resend it. If you have any answers to the
> questions below, please reply. Thanks.
>
>
>
> I have the following questions regarding the getPortletDescription()
> operation:
>
> 1. How does the data returned in the PortletDescriptionResponse
> relate to the portlet description contained within the
> ServiceDescription? Must they be identical? Or, can the producer
> change the data based on the user context. For instance, could the
> producer not specify a particular supported mode if the user is not an
> admin?
> 2. If the answer to #1 is that they can be different, then is
> there a way to ensure, when calling this method, that the
> PortletDescription returned would be equal to that in the
> ServiceDescription? Perhaps by sending all of the possible User
> Categories?
> 3. If the answer to #1 is that they must be the same, then is the
> only use of the UserContext attribute to allow the producer to throw an
> AccessDenied Fault? Will passing all user categories avoid this?
>
> Essentially, I’m trying to understand the intended use of
> getPortletDescription() and if it can be used as an optimization to
> update portlet meta data without having to retrieve the full service
> description.
>
> Thanks for the information.
>
> Scott
>
>
>
>
>
>