JSF multiple combobox problem

UI Components for JSF
Post Reply
hotwolt
Posts: 1
Joined: 22 Aug 2011, 10:22

22 Aug 2011, 10:26

I have a problem about multiple combobox, also i am using primefaces. My code is like below;

xhtml page:

Code: Select all

<f:view xmlns="http://www.w3.org/19399/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.prime.com.tr/ui"
xmlns:pm="http://primefaces.prime.com.tr/mobile"
contentType="text/html">

<pm:page title="Title">


    <pm:view id="organizationView" swatch="b">
        <pm:header title="Title">
            <f:facet name="right">
                <pm:button value="Logout" icon="minus" />
            </f:facet>
        </pm:header>

        <pm:content>
            <h:form id="organizationForm" prependId="false">
                <p:separator />

                <h:selectOneMenu id="company" value="#{myView.selected}" >
                    <f:selectItem value="#{null}" itemLabel="Select company..." noSelectionOption="true" />
                    <f:selectItems value="#{myView.companyList}" 
                        var="company" itemLabel="#{company.name}" itemValue="#{company.companyId}"/>
                    <p:ajax immediate="true" update="organization" listener="#{myView.loadOrganization}" />
                </h:selectOneMenu>

                <h:selectOneMenu id="organization" value="#{myView.organization.orgId}">
                    <f:selectItem itemLabel="Select Organization..." itemValue="" />
                    <f:selectItems value="#{myView.orgList}" 
                        var="organization" itemLabel="#{organization.name}" itemValue="#{organization.orgId}"/>
                </h:selectOneMenu>

                <p:separator />
            </h:form>
        </pm:content>
    </pm:view>

</pm:page>
and backing-bean is like this:

Code: Select all

@Component("myView")
@Scope("view")

public class MyView implements Serializable {

private Long selected;

private List<Company> companyList;
private Company company;
private Organization organization;
private List<Organization> orgList;

@Autowired
private MyViewService myViewService;

public MyView() {

}

@PostConstruct
public void init(){
    companyList = myViewService.findAllCompany();

}

public void loadOrganization() {
    if(selected != null && selected >0L)
        orgList = myViewService.findGroupsByCompanyId(selected);
}

public void setCompany(Company company) {
    this.company = company;
}

public Company getCompany() {
    return company;
}

public List<Company> getCompanyList() {
    return companyList;
}

public void setCompanyList(List<Company> companyList) {
    this.companyList = companyList;
}

public List<Organization> getOrgList() {
    return orgList;
}

public void setOrgList(List<Organization> orgList) {
    this.orgList = orgList;
}

public Organization getOrganization() {
    return organization;
}

public void setOrganization(Organization organization) {
    this.organization = organization;
}

public myViewService getMyViewService() {
    return myViewService;
}

public void setMyViewService(MyViewService myViewService) {
    this.myViewService = myViewService;
}

public Long getSelected() {
    return selected;
}

public void setSelected(Long selected) {
    this.selected = selected;
}

}
when i change company combobox it calls loadOrganization() method, but selected value is set to null. How can i get selected value from company combobox? Thx all for your help.

Post Reply

Return to “PrimeFaces”

  • Information
  • Who is online

    Users browsing this forum: No registered users and 57 guests