Each portlet application has its own distinct PortletSession object per user session.
The portlet container must not share the PortletSession object or the attributes stored
in it among different portlet applications or among different user sessions.
The PortletSession interface defines two scopes for storing objects,
APPLICATION_SCOPE and PORTLET_SCOPE.
Any object stored in the session using the APPLICATION_SCOPE is available to any other
portlet that belongs to the same portlet application and that handles a request identified as
being a part of the same session.
Objects stored in the session using the PORTLET_SCOPE must be available to the portlet
during requests for the same portlet window that the objects where stored from.
*PortletSession session = request.getSession(true);