Before I ask my question, a short description of our context.
- JBoss Portal 2.7.
- A custom LoginModule, extending the JBoss DB identity Login Module to handle special data and conditions, and just delegates to the actual super.login() to log in. This module puts a special attribute on the HttpSession.
- Several portlets applications, each one in its WAR.
The question is : how can we retrieve the "global HttpSession" attribute in the portlets ?
As expected for strict partitioning of data between distinct web application, the portal gives each portlet application its own view of the HttpSession. Both HttpSession used in Servlet, Filters or JSP pages, and PortletSession in Applicztion scope share the same view in the application, but nothing from above (the portal or application server) or from other applications.
How can we get common objects set in the "true" HttpSession ?
We've tried to use the PolicyContext that gives an access to the HttpServletRequest, and thus to the session, but this late session is already handled by the Portal, and just exposes application scope data.
Is there a special parameter that ask the portal to put down to the portlets applications sessions attributes from the HttpServlet session ?
Is there a way to customize the UserInfo that the portal can expose to portlets ?