This content has been marked as final.
Show 2 replies
-
1. Re: Migration to 3.3.1 problem - commandLink with actionpara
ilya_shaikovsky May 28, 2009 10:58 AM (in response to jhaley)Discussed many times at this forum. We just changed the behavior according to JSF specification.
Nested action listeners according to spec should be fired after the parent components action listerner. And a4j:action param works as action listener. So move action listener definition to the action param tag. -
2. Re: Migration to 3.3.1 problem - commandLink with actionpara
jhaley May 28, 2009 12:04 PM (in response to jhaley)Thanks, that works in the above example but I have now run across an example that does not work. I've outlined my attempts below, but am unable to find a resolution.
Works with 3.2.2 #{accessorial.selected} is set after actionListener called<a4j:repeat value="#{quote.accessorials.selectedAccessorials}" var="accessorial"> <a4j:commandLink value="Edit" actionListener="#{accessorialsCtrl.editAccessorial}" ajaxSingle="true" rendered="#{accessorial.editable}" reRender="panelTitleRoomName,accessorialDetailFrm" oncomplete="Richfaces.showModalPanel('panelaccessorialDetail')"> <f:setPropertyActionListener target="#{accessorial.selected}" value="true" /> </a4j:commandLink> </a4j:repeat>
#{accessorial.selected} is set but actionListener is never called<a4j:repeat value="#{quote.accessorials.selectedAccessorials}" var="accessorial"> <a4j:commandLink value="Edit" rendered="#{accessorial.editable}" reRender="panelTitleRoomName,accessorialDetailFrm" oncomplete="Richfaces.showModalPanel('panelaccessorialDetail')"> <f:setPropertyActionListener target="#{accessorial.selected}" value="true" /> <a4j:actionparam actionListener="#{accessorialsCtrl.editAccessorial}"></a4j:actionparam> </a4j:commandLink> </a4j:repeat>
#{accessorial.selected} is never set but actionListener is called<a4j:repeat value="#{quote.accessorials.selectedAccessorials}" var="accessorial"> <a4j:commandLink value="Edit" rendered="#{accessorial.editable}" reRender="panelTitleRoomName,accessorialDetailFrm" oncomplete="Richfaces.showModalPanel('panelaccessorialDetail')"> <a4j:actionparam actionListener="#{accessorialsCtrl.editAccessorial}" assignTo="#{accessorial.selected}" value="true"></a4j:actionparam> </a4j:commandLink> </a4j:repeat>
#{accessorial.selected} is never set and actionListener is never called<a4j:repeat value="#{quote.accessorials.selectedAccessorials}" var="accessorial"> <a4j:commandLink value="Edit" rendered="#{accessorial.editable}" reRender="panelTitleRoomName,accessorialDetailFrm" oncomplete="Richfaces.showModalPanel('panelaccessorialDetail')"> <a4j:actionparam assignTo="#{accessorial.selected}" value="true"></a4j:actionparam> <a4j:actionparam actionListener="#{accessorialsCtrl.editAccessorial}" ></a4j:actionparam> </a4j:commandLink> </a4j:repeat>