[richfaces-issues] [JBoss JIRA] Updated: (RF-5598) a4j:push is not portlet session aware

Tihomir Surdilovic (JIRA) jira-events at lists.jboss.org
Tue Jan 13 10:06:14 EST 2009


     [ https://jira.jboss.org/jira/browse/RF-5598?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Tihomir Surdilovic updated RF-5598:
-----------------------------------



> a4j:push is not portlet session aware
> -------------------------------------
>
>                 Key: RF-5598
>                 URL: https://jira.jboss.org/jira/browse/RF-5598
>             Project: RichFaces
>          Issue Type: Bug
>          Components: portal
>    Affects Versions: 3.3.0
>         Environment: Richfaces 3.3.0.CR2, JBoss Portletbridge 1.0.0.B5, JBoss Portal 2.6.4
>            Reporter: Dirk Pitt
>            Assignee: Alexander Smirnov
>             Fix For: Future
>
>
> Hallo,
> I have funny  problem with a4j:pushBean...
> We have a web application, which runs perfectly in test environment with single web client.
> But if for the same page in the web application another browser client is opened, second browser start receiving the events intended for the first browser...
> So my first impression is that push functionality make no distinction about from which session is called...
> So I surf little bit in the source code and here what I found....
> In org.ajax4jsf.webapp.BaseFilter an instance of PushEventsCounter is obtained with the following call
> PushEventsCounter listener = eventsManager .getListener(ajaxPushHeader);
> which my debuging shows ajaxPushHeader contains no session specific information. At this point I have to say I am using the JBoss Portal and JBoss Portlet Bridge.
> I made some more debuging and I found this....
> In org.ajax4jsf.component.UIPush in method getListenerId method only HttpSession case taking into count....
> Object session = context.getExternalContext().getSession(false);
> StringBuffer id = new StringBuffer();
> if(null != session && session instanceof HttpSession){
> HttpSession httpSession = (HttpSession) session;
> id.append(httpSession.getId());
> }
> id.append(context.getViewRoot().getViewId());
> id.append(NamingContainer.SEPARATOR_CHAR);
> id.append(getClientId(context));
> return id.toString();
> But portal delivers PortletSession object so the SessionId is not there at that is causing the mentioned problem...
> Now this problem is quite critical for our project and I can actually deliver code solution to be commited jboss source tree also but the question is how to solve this without putting portal dependencies to Richfaces classes...
> Or can we solve this at PortletBridge?

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        



More information about the richfaces-issues mailing list