[richfaces-issues] [JBoss JIRA] (RF-12095) Incorrect behavior of two pushes on the page

Lukáš Fryč (JIRA) jira-events at lists.jboss.org
Tue Mar 27 06:10:47 EDT 2012


    [ https://issues.jboss.org/browse/RF-12095?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12679555#comment-12679555 ] 

Lukáš Fryč commented on RF-12095:
---------------------------------

There is delay in between repeated subscription after disabling and enabling push: RF-12096
                
> Incorrect behavior of two pushes on the page
> --------------------------------------------
>
>                 Key: RF-12095
>                 URL: https://issues.jboss.org/browse/RF-12095
>             Project: RichFaces
>          Issue Type: Bug
>      Security Level: Public(Everyone can see) 
>          Components: component-push/poll
>    Affects Versions: 4.2.0.Final
>            Reporter: Lukáš Fryč
>
> When you have 2 pushes on the page and one is conditionally rendered, rerendering it causes unsubscribing of second push:
> {code:xml}
> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
>     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
> <html xmlns="http://www.w3.org/1999/xhtml" xmlns:ui="http://java.sun.com/jsf/facelets" xmlns:h="http://java.sun.com/jsf/html"
>     xmlns:f="http://java.sun.com/jsf/core" xmlns:a4j="http://richfaces.org/a4j">
> <f:view>
>     <h:head>
>     </h:head>
>     <h:body>
>         <h:form>
>             <br /><br /><br /><br />
>             <!--  PUSH 1 -->
>             <a4j:commandButton value="Push 1!" action="#{richBean.push}" />
>             
>             
>             <a4j:outputPanel id="pushPanel">
>                 <a4j:push id="push" rendered="#{not pushDisabled}" address="sampleAddress"  ondataavailable="$('*[id$=outputDate]').text(event.rf.data)" onsubscribed="alert('subscribed')" />
>             </a4j:outputPanel>
>             
>             
>             
>             <a4j:outputPanel id="pushDisablementPanel">
>                 <h:selectBooleanCheckbox value="#{pushDisabled}">
>                     <a4j:ajax render="pushPanel pushDisablementPanel" />
>                 </h:selectBooleanCheckbox>
>                 <h:outputText value="#{pushDisabled ? 'disabled' : 'enabled'}" />
>             </a4j:outputPanel>
>             
>             <br />
>             
>             <a4j:outputPanel id="outputDate">
>                 #{richBean.date}
>             </a4j:outputPanel>
>             
>             <br />
>             
>             <!--  PUSH 2 -->
>             <a4j:commandButton value="Push 2!" action="#{richBean.push2}" />
>             
>             <a4j:push id="push2" address="sampleAddress2"  ondataavailable="$('*[id$=outputDate2]').text(event.rf.data)" onsubscribed="alert('subscribed2')" />
>             <br />
>             
>             <a4j:outputPanel id="outputDate2">
>                 #{richBean.date}
>             </a4j:outputPanel>
>         </h:form>
>     </h:body>
> </f:view>
> </html>
> {code}
> {code:java}
> @ManagedBean
> public class RichBean {
>     public Date getDate() {
>         return new Date();
>     }
>     public void push() throws MessageException {
>         TopicKey topicKey = new TopicKey("sampleAddress");
>         TopicsContext topicsContext = TopicsContext.lookup();
>         topicsContext.publish(topicKey, new Date().toString());
>         System.out.println("push event");
>     }
>     
>     public void push2() throws MessageException {
>         TopicKey topicKey = new TopicKey("sampleAddress2");
>         TopicsContext topicsContext = TopicsContext.lookup();
>         topicsContext.publish(topicKey, new Date().toString());
>         System.out.println("push event 2");
>     }
> }
> {code}
> Steps to reproduce:
> 1. open the page
> 2. you can see "subscribed" and "subscribed2" alert messages
> 3. both, Push! and Push 2! buttons reloads respective dates
> 4. click on checkbox and on the right of Push! button
> EXPECTED: only Push! should stop to work
> ACTUAL: both Push! and Push 2! stops to work

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.jboss.org/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira

       



More information about the richfaces-issues mailing list