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

Nick Belaevski updated RF-5598:
-------------------------------

    Assignee: Alexander Smirnov


> 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
>
> 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

        
_______________________________________________
richfaces-issues mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/richfaces-issues

Reply via email to