-1
登録ページで、ユーザーが1つの役割のみを選択できるようにします。したがって、私はString
オブジェクトを返します<h:selectOneMenu
<h:selectOneMenu
h:selectOneMenuアイテムをカスタムJSFコンバータを使用してリスト<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>
を使用しています。しかし、それをデータベースに保存するには、List<String>
を取得する必要があります。ここでは、コンバータ私はどのように私は<h:selectOneMenu
リターンString
List
に変換する必要があり
@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();
}
を使用していますか? 私はここにあなたが文字列の値を格納している
NullPointerException
1:selectコンポーネントであるarg1ではなく、arg2を使用します。 2: 'List result = null;'がヌルポインタ例外の原因です。ヌルの代わりに 'new ArrayList ()'のようなものを試してみてください。 –
すべての組み合わせはどういう意味ですか?リストをヌルとして初期化し、それを次の行に追加すると、明らかにヌルポインタ例外が発生します。 –