-1
在註冊頁面上,我希望用戶只能選擇一個角色。所以我用<h:selectOneMenu
如何使用自定義JSF轉換器將h:selectOneMenu項目轉換爲列表<String>?
<h:selectOneMenu id="roles" value="#{register.user.roles}" required="true">
<f:selectItem itemValue="EMPLOYEE" itemLabel="EMPLOYEE" />
<f:selectItem itemValue="MANAGER" itemLabel="MANAGER" />
</h:selectOneMenu>
<h:selectOneMenu
回報String
對象。但是,爲了堅持到數據庫我需要得到List<String>
。下面是我轉換使用
@FacesConverter(value="aConverter")
public class AConverter implements Converter {
@Override
public Object getAsObject(FacesContext arg0, UIComponent arg1, String arg2)
throws ConverterException {
List<String> result = null;
result.add(arg1.toString());
return result;
}
@Override
public String getAsString(FacesContext arg0, UIComponent arg1, Object arg2)
throws ConverterException {
return arg1.toString();
}
我應該如何轉換<h:selectOneMenu
回報String
到List
? 我得到NullPointerException
1:使用arg2,它是值,不是arg1,它是選擇組件。 2:'列表 result = null;'是空指針異常的原因。嘗試像'new ArrayList ()'而不是null。 –
你是什麼意思的所有組合?如果你初始化一個列表爲null,然後在下一行添加它,你顯然會得到一個空指針異常。 –