0
我有一個變量(名爲myChoice),我無法在程序中保存它的值,這是代碼。無法在程序中保存變量的值
JSF:
<h:form id="main">
<p:growl id="msgs" />
<h:selectOneMenu value="#{Bean.myChoice}">
<f:selectItems value="#{Bean.getMyListKPI()}" />
<p:ajax event="valueChange" update="f1,f2,f3"
listener="#{Bean.selectChangeHandler}"></p:ajax>
</h:selectOneMenu>
</h:form>
我的JAVA代碼:
public List<SelectItem> getMyListKPI() {
FindKpi fkpi =new FindKpi();
if (MyListKPI == null) {
MyListKPI = new ArrayList<SelectItem>();
for (String val : fkpi.FindListKpi(iduser)) {
MyListKPI.add(new SelectItem(val));
}
}
return MyListKPI;
}
public void selectChangeHandler() { //mychoice has the right value
form1Visible = false;
form2Visible = false;
form3Visible = false;
if (this.myChoice.equals("Number Of Issues in Status")) {
this.setMyChoiceInter(myChoice);
form1Visible = true;
} else if (this.myChoice.equals("Response Time")) {
form2Visible = true;
} else if (this.myChoice.equals("Environment Availibility")) {
form3Visible = true;
}
}
public String query()
{
if (this.myChoice.equals("Number Of Issues in Status")) { //myChoice always NULL
//....
}
}
更新
我宣佈myChoice靜態和它的工作! :)
你的bean的範圍是什麼? –
有一個'myChoice'的setter,對吧? – Thomas
是的,有getter和setters,範圍是請求 – rym