感谢任何建议。
我正在尝试使用primefaces组件,当我选择元素并继续由于contractid获取空指针异常,这不能为null因为我已经发起了这个。 这是代码。
<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
//....
}
答案 0 :(得分: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
//....
}