Re: How to invalidate portlet session on logout?
Eric Dalquist <[email protected]> Wed, 18 Nov 2009 06:40:06 -0600
| Newsgroups | gmane.comp.jakarta.pluto.user |
|---|---|
| Organization | UW DoIT |
| Message-ID | <[email protected]> |
Here is a previous thread on this topic which includes some links as to how uPortal deals with this issue: http://old.nabble.com/Invalidating-all-portlet-sessions-td18386578.html -Eric Brett Randall wrote: > Yes Ate is correct, and also here's a couple of likely links to > Jetspeed and Liferay issue trackers where I believe they have dealt > with the same requirement you are trying to deal with: > > http://issues.apache.org/jira/browse/JS2-582 > http://issues.liferay.com/browse/LEP-1466 > > I've not reviewed those issues, but I can image that the Portal > context needs to propagate the session invalidation to the Portlet > context. > > Brett > > On Wed, Nov 18, 2009 at 8:26 PM, Ate Douma <[email protected] > <mailto:[email protected]>> wrote: > > Portlet 2.0 spec PLT.18.4 (and for that matter the whole of the > Portlet spec) *only* talks about the *Portlet* application, not > the *Portal* application. > This means, the portlet *container* is required to invalidate the > servlet (application) session when the portlet session is > invalidated, and this is properly implemented in the Pluto container. > You should not confuse this with the (limited) behavior of the > Pluto *Portal* Driver, which primarily purpose is only to serve as > testbed for the Pluto container, not a full blown, production > ready, portal. > Handling logout *across* portlet applications hosted by the Pluto > Portal Driver simply isn't implemented as it not needed for > *testing* the Pluto Container itself. > > The Pluto Portal Driver, while actually used by some for > production purposes, really is not targeted nor maintained for > such usages. > > If you need such functionality (and/or similar production quality > features like persistence, better (session) navigation state/url > handling, etc., etc.) you either have to add this yourself or > probably better switch using a full blown portal like Apache > Jetspeed-2 or others which does provide all such features. > > HTH, > > Ate > > > hub wrote: > > Brett, > After logout / login I see the same session attributes as I > set before in > the portlet session. > I noticed that my, "valueUnbound()" method for attributes in > the portlet > session is not called for the cleanup I need to do on logout / > "portal > session invalidation". I then set portlet session expiration > time to a short > period to check, if valueUnbound() is called at all, ... it > is, also on > application shutdown. > The session.invalidate() on logout is run in a jsp in "portal > context". > After login with different username I have a different > principal in the > portlet session, but same session attributes as set before. > > > javabrett wrote: > > If the HttpSession object is invalidated, the > PortletSession object must > also be invalidated by the portlet container. > > > I read the same here for JSR 168: > http://opensource.atlassian.com/confluence/spring/pages/viewpage.action?pageId=3131 > > I have set emptySessionPath="true" in server.xml. > running on JBoss GA 4.2.2, Tomcat version is 6.0.20 > > > Thank you > hub > > > javabrett wrote: > > According to Portlet 2.0 spec PLT.18.4: > > If the HttpSession object is invalidated, the > PortletSession object > must > also be invalidated by the portlet container. > > How do you detect that your portlet sessions are not being > invalidated? > > Brett > > On Tue, Nov 17, 2009 at 10:09 PM, hub <[email protected] > <mailto:[email protected]>> wrote: > > Hello, > How do I invalidate all portlet sessions on logout? > > in my logout.jsp in the portal I do the following > <% > session.invalidate(); > %> > > This invalidates the "portal" session but my portlet > sessions are not > invalidated. > > > >
smime.p7s
(application/x-pkcs7-signature, 3.2 KB) - not displayed