Details
-
Type: Bug
-
Status: Closed
-
Priority: Major
-
Resolution: Duplicate
-
Affects Version/s: 3.0.RC1
-
Fix Version/s: 3.0
-
Component/s: ACE-Components
-
Labels:None
-
Environment:*
-
Assignee Priority:P1
Description
From Derek:
When running the Panel Listeners example in the ACE Showcase with
MyFaces, the methods that handle the "toggle" and "close" events are not
being fired. The relevant markup:
<ace:panel header="ICEfaces Header With Listeners"
closable="true"
toggleable="true">
<ace:ajax event="close" listener="#{panelListener.close}" render="status" />
<ace:ajax event="toggle" listener="#{panelListener.toggle}"
render="status"/>
I added some logging and the problem is that the AjaxBehavior that is
used to broadcast the events is not the AjaxBehavior that was initially
registered. I assume that the extra AjaxBehaviors that are created are
the cost of doing all the Facelets includes and such.
Mojarra
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@7629a4cb
AjaxBehavior.setListener:
/resources/examples/ace/panel/panelListener.xhtml @44,93
listener="#{panelListener.close}":
org.apache.el.MethodExpressionImpl@c35a2e13 for
org.icefaces.ace.component.ajax.AjaxBehavior@7629a4cb
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@28024808
AjaxBehavior.setListener:
/resources/examples/ace/panel/panelListener.xhtml @45,94
listener="#{panelListener.toggle}":
org.apache.el.MethodExpressionImpl@2fddf4db for
org.icefaces.ace.component.ajax.AjaxBehavior@28024808
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@2dc719bd
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@e478e18
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@7bc1d0fa
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@717f0c8f
AjaxBehavior.broadcast: calling for
org.icefaces.ace.component.ajax.AjaxBehavior@28024808
PanelListener.toggle: Toggle Event fired @ 10:56:17
MyFaces
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@37de41ce
AjaxBehavior.setListener:
/resources/examples/ace/panel/panelListener.xhtml at line 44 and column
93: org.apache.el.MethodExpressionImpl@c35a2e13 for
org.icefaces.ace.component.ajax.AjaxBehavior@37de41ce
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@60b25809
AjaxBehavior.setListener:
/resources/examples/ace/panel/panelListener.xhtml at line 45 and column
94: org.apache.el.MethodExpressionImpl@2fddf4db for
org.icefaces.ace.component.ajax.AjaxBehavior@60b25809
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@5cb1e877
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@24150c2c
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@61d22f35
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@2e1972bf
AjaxBehavior.broadcast: calling for
org.icefaces.ace.component.ajax.AjaxBehavior@24150c2c
AjaxBehavior.broadcast: no listener for
org.icefaces.ace.component.ajax.AjaxBehavior@24150c2c
When running the Panel Listeners example in the ACE Showcase with
MyFaces, the methods that handle the "toggle" and "close" events are not
being fired. The relevant markup:
<ace:panel header="ICEfaces Header With Listeners"
closable="true"
toggleable="true">
<ace:ajax event="close" listener="#{panelListener.close}" render="status" />
<ace:ajax event="toggle" listener="#{panelListener.toggle}"
render="status"/>
I added some logging and the problem is that the AjaxBehavior that is
used to broadcast the events is not the AjaxBehavior that was initially
registered. I assume that the extra AjaxBehaviors that are created are
the cost of doing all the Facelets includes and such.
Mojarra
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@7629a4cb
AjaxBehavior.setListener:
/resources/examples/ace/panel/panelListener.xhtml @44,93
listener="#{panelListener.close}":
org.apache.el.MethodExpressionImpl@c35a2e13 for
org.icefaces.ace.component.ajax.AjaxBehavior@7629a4cb
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@28024808
AjaxBehavior.setListener:
/resources/examples/ace/panel/panelListener.xhtml @45,94
listener="#{panelListener.toggle}":
org.apache.el.MethodExpressionImpl@2fddf4db for
org.icefaces.ace.component.ajax.AjaxBehavior@28024808
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@2dc719bd
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@e478e18
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@7bc1d0fa
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@717f0c8f
AjaxBehavior.broadcast: calling for
org.icefaces.ace.component.ajax.AjaxBehavior@28024808
PanelListener.toggle: Toggle Event fired @ 10:56:17
MyFaces
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@37de41ce
AjaxBehavior.setListener:
/resources/examples/ace/panel/panelListener.xhtml at line 44 and column
93: org.apache.el.MethodExpressionImpl@c35a2e13 for
org.icefaces.ace.component.ajax.AjaxBehavior@37de41ce
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@60b25809
AjaxBehavior.setListener:
/resources/examples/ace/panel/panelListener.xhtml at line 45 and column
94: org.apache.el.MethodExpressionImpl@2fddf4db for
org.icefaces.ace.component.ajax.AjaxBehavior@60b25809
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@5cb1e877
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@24150c2c
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@61d22f35
AjaxBehavior: org.icefaces.ace.component.ajax.AjaxBehavior@2e1972bf
AjaxBehavior.broadcast: calling for
org.icefaces.ace.component.ajax.AjaxBehavior@24150c2c
AjaxBehavior.broadcast: no listener for
org.icefaces.ace.component.ajax.AjaxBehavior@24150c2c
Issue Links
- duplicates
-
ICE-7523 MyFaces 2: listeners registered with ace:ajax tags are not called
- Closed
Activity
- All
- Comments
- History
- Activity
- Remote Attachments
- Subversion