When selecting an entity from a list (like in the hotel booking example), does the source of the list have to be a DataModel? The following isn't working for me:
<rich:dataTable id="users" value="#{organizationUsers.resultList}" var="u"> <f:facet name="footer"> <s:link value="Add user" action="#{userAdmin.create}"/> </f:facet> <rich:column> <f:facet name="header">Last Name</f:facet> <h:outputText value="#{u.lastName}"/> </rich:column> <rich:column> <f:facet name="header">First Name</f:facet> <h:outputText value="#{u.firstName}"/> </rich:column> <rich:column> <f:facet name="header">Email</f:facet> <h:outputText value="#{u.emailAddress}"/> </rich:column> <rich:column> <f:facet name="header">Last Connected</f:facet> <h:outputText value="#{u.lastConnected}"> <f:convertDateTime pattern="MM/dd/yyyy h:mm a" timeZone="#{userTimeZone}"/> </h:outputText> </rich:column> <rich:column> <f:facet name="header">Action</f:facet> <s:link id="editUser" action="#{userAdmin.edit(u)}" value="edit"/> </rich:column> </rich:dataTable>
@Name("organizationUsers") public class OrganizationUsers extends EntityQuery { @In SessionPreferences prefs; @Override public String getEjbql() { return "from SiteUser u where u.organization = #{prefs.currentOrganization}"; } @Override public String getOrder() { return "u.lastName, u.firstName"; } }
<faces-config> <!-- Select one of the standard transaction models for the Seam application --> <lifecycle> <phase-listener>org.jboss.seam.jsf.SeamPhaseListener</phase-listener> </lifecycle> </faces-config>
Just use organizationUsers.dataModel