鑑於這種selectOneMenu用於selectOneMenu用於不顯示正確的值,但吸氣得到它
<h:selectOneMenu value="#{fb.aktionTxt}">
<f:selectItems value="#{myBean.FBAEnum}" />
</h:selectOneMenu>
這個bean代碼
public FehlerBewertungAktionEnum[] getFBAEnum() {
return FehlerBewertungAktionEnum.values();
}
此枚舉
public enum FehlerBewertungAktionEnum {
NEKO_NEKO("NEK0-NEK0 "),
CURSOR_PARAMETER("CURSOR-PARAMETER "),
CURSOR_LEER("CURSOR-LEER ");
private final String str;
FehlerBewertungAktionEnum(String str) { this.str = str;}
public String toString(){ return str; }
}
和aktionTxt
的數據庫值|CURSOR_LEER | (20 chars)
爲什麼它在我的selectOneMenu中顯示NEK0-NEK0(枚舉的第一個元素)而不是CURSOR_LEER,當getter返回|CURSOR_LEER |
?我調試了jsf頁面,發現沒有<option>
具有selected
屬性。
奇怪的是,我可以使用相同的jsf代碼創建一個新元素,它會將我的新對象正確保存到數據庫中。我很確定這裏沒有辦法使用trim()
,因爲此後我無法保存我的fb
對象。
之內的空間這樣的錯誤難以發現,特別是如果還有其他幾個更明顯的嫌疑人:) – 2014-11-27 11:12:40