1

感谢您的任何建议。

我在选择元素时尝试使用 primefaces 组件并由于contractid而继续获取空指针异常,它不能为空,因为我已经启动了它。这是代码。

<h:selectOneMenu id="ContractName" value="#{managedContract.c.contract_id}" style="width: 300px;" required="true" requiredMessage="Please Select Contract.">
    <f:selectItem itemValue="" itemLabel="-Select Contract-" noSelectionOption="true" itemDisabled="true"></f:selectItem>
    <f:selectItems value="#{managedContract.contracts}" var="contractvar" itemLabel="#{contractvar.contract_name}" itemValue="#{contractvar.contract_id}" />
</h:selectOneMenu>
public class ManagedContract{
   private int contractid;
   public managedContract(){
   this.contractid=0;


//getter

//setter

//....

}
4

1 回答 1

1

搬家var="contractvar" itemLabel="#{contractvar.contract_name}" itemValue="#{contractvar.contract_id}"_<f:selectItems>

<h:selectOneMenu id="ContractName" value="#{managedContract.c.contract_id}" style="width: 300px;" required="true" requiredMessage="Please Select Contract.">
                                <f:selectItem itemValue="" itemLabel="-Select Contract-" noSelectionOption="true" itemDisabled="true"></f:selectItem>
                                <f:selectItems value="#{managedContract.contracts}"  />
                            </h:selectOneMenu>

在你的bean中你必须有 getContracts()方法

@ManagedBean
@ViewScoped
public class ManagedContract imlements java.io.Serializable{
   private int contractid;
   public managedContract(){
   this.contractid=0;
}

//getter

//setter

//....

}
于 2013-10-01T10:01:03.557 回答