myfaces-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <>
Subject [Myfaces Wiki] Update of "Top 10 Questions" by Dennis Byrne
Date Fri, 17 Mar 2006 07:42:40 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Myfaces Wiki" for change notification.

The following page has been changed by Dennis Byrne:

  Putting this context parameter in your deployment descriptor will force any JSF implementation
to load the configuration twice, therefore registering each phase listener twice.
- == 2.) "Action listeners and actions for my command links on dataTables/dataLists do not
fire" ==
+ == 2.) "Action listeners and actions for my commands on dataTables do not fire" ==
- TODO paragraph about request scoped data, t:saveState, etc. 
+ Action listeners and actions are not invoked when the action source ( h:commandLink, h:commandButton
) is not rendered.  When our action sources are on a dataTable, and  the value attribute of
the dataTable points to a request scoped data source, the action source just isn't rendered
on a subsequent request.
+ {{{
+ <h:dataTable value="#{requestScopedBean.dataModel.wrappedData}" />
+ 	<h:column>
+ 		<h:commandLink value="click here" action="#{backingBean.willNotFire}" />
+ 	</h:column>
+ </h:dataTable>
+ }}}
+ The action source ( h:commandLink, h:commandButton ), is not rendered because the data source
does not exist during a subsequent request ( it was garbage collected after the first response
was completed).
+ To solve this problem, use t:saveState or put the request scoped backing bean in session
+ {{{
+ <t:saveState value="#{myRequestScopedBean.dataModel.wrappedData}" />
+ }}}
+ t:saveState is preffered over a session scoped solution.

View raw message