Voila! Thanks for the hint and now it is working perfectly. My solution is based on hotchai's solution here:
http://jroller.com/page/hotchai?entry=jsf_converter_for_jdk_1 (I am using Seam 1.1 beta 2 and all the example source code are from Seam 1.1 beta 2 as well) The EnumConverter class can be used as it is, no need to modify and it simply works. Here is my Enum classes: | public class User implements Serializable { | // same as the booking sample | public static enum Gender{ | FEMALE("female"), MALE("male"); | private String label; | | Gender(String label){ | this.label = label; | } | | public String getLabel(){ | return this.label; | } | } | | public static enum Title { | DR("Dr."), MS("Ms."), MR("Mr."), MRS("Mrs."); | private String label; | | Title(String label) { | this.label = label; | } | | public String getLabel() { | return this.label; | } | } | } | | here is the code from backing bean: | | @Stateful | @Scope(EVENT) | @Name("register") | public class RegisterBacking implements Register { | //... | private SelectItem[] titleItems; | private SelectItem[] genderItems; | | //... same as the booking example | public SelectItem[] getTitleItems() { | this.titleItems = new SelectItem[Title.values().length]; | int i = 0; | for (Title t : Title.values()) { | this.titleItems[i++] = new SelectItem(t, t.getLabel()); | } | return this.titleItems; | } | | public SelectItem[] getGenderItems() { | this.genderItems = new SelectItem[Gender.values().length]; | int i = 0; | for (Gender g : Gender.values()) { | this.genderItems[i++] = new SelectItem(g, g.getLabel()); | } | return this.genderItems; | } | } | | The code in register.xhtml: | | <div class="entry"> | <div class="label"><h:outputLabel for="title">Title:</h:outputLabel></div> | <div class="input"><s:decorate> | <h:selectOneMenu id="title" value="#{guest.title}" required="true"> | <f:selectItems value="#{register.titleItems}" /> | </h:selectOneMenu> | <br /> | </s:decorate></div> | </div> | | <div class="entry"> | <div class="label"><h:outputLabel for="gender">Gender:</h:outputLabel></div> | <div class="input"><s:decorate> | <h:selectOneMenu id="gender" value="#{guest.gender}" | required="true"> | <f:selectItems value="#{register.genderItems}" /> | </h:selectOneMenu> | <br /> | </s:decorate></div> | </div> | | View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3987942#3987942 Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3987942 _______________________________________________ jboss-user mailing list [email protected] https://lists.jboss.org/mailman/listinfo/jboss-user
