You can find the full source code for this website in the Seam package in the directory /examples/wiki. It is licensed under the LGPL.
In my example below, i have an inquiry entity that has a country drop down. So in my action class i have a factory method that retrieves all countries and outjects to event scope to be called in my selectOneMenu.
InquiryAction class:
@SuppressWarnings("unchecked") @Factory(value = "countriesList", scope = ScopeType.EVENT) public List<Country> getCountriesList() { return entityManager.createNamedQuery("Country.findAll").getResultList(); }
Inquiry.xhtml
<s:decorate id="countryField" template="layout/edit.xhtml"> <ui:define name="label">Country</ui:define> <h:selectOneMenu id="country" value="#{newInquiry.address.countryCode}" required="true"> <s:selectItems var="_country" value="#{countriesList}" label="#{_country.countryName}" noSelectionLabel="-- Select --"/> <s:convertEntity/> </h:selectOneMenu> </s:decorate>