I don't know if this is RichFaces, Seam or EL issue or if this is just impossible (original problem JBoss ELExpression Evaluates To Null)
This does not work, id is always null is action method:
<rich:dataTable value="#{admin.infoEditList.items}" var="info"> <h:column> <a4j:region> <a4j:commandLink action="#{admin.infoEditList.selectItem(info.id)}" /> </a4j:region> </h:column> </rich:dataTable>
removing the region and the correct id is used in the action:
<rich:dataTable value="#{admin.infoEditList.items}" var="info"> <h:column> <a4j:commandLink action="#{admin.infoEditList.selectItem(info.id)}" /> </h:column> </rich:dataTable>
placing the region outside the table works as well:
<a4j:region> <rich:dataTable value="#{admin.infoEditList.items}" var="info"> <h:column> <a4j:commandLink action="#{admin.infoEditList.selectItem(info.id)}" /> </h:column> </rich:dataTable> </a4j:region>
replacing the a4j:commandLink with h:commandLink or s:link makes no differance - the EL is not evaluated at render time.