rich:dataTable中的h:commandlink提交无效问题
<a4j:keepAlive beanName="***Action" ajaxOnly="true"/>
此时把h:commandLink替换成a4j:commandLink即可
由于jsf的重构组件时保持状态的原理,造成commandlink未提交。解决办法:在页面中加入:<t:saveState value="#{后台bean名.datatable的list名}"/>或者把后台bean名的范围改为session<a4j:keepAlive beanName="***Action" ajaxOnly="true"/>此时把h:commandLink替换成a4j:commandLink即可或者在web.xml把javax.faces.STATE_SAVING_METHOD设置为client <h:dataTable value="#{requestScopedBean.dataModel.wrappedData}" /> <h:column> <h:commandLink value="click here" action="#{backingBean.willNotFire}" /> </h:column> </h:dataTable> <t:saveState value="#{myRequestScopedBean.dataModel.wrappedData}" />