SelectOneRadioを使用してクレイジーなグループ化を行いたいのでname、タグの属性を指定できる独自のカスタムコンポーネントを作成することにしました<input>(ご存知のとおり、nameラジオボタンが同じグループにあることを意味します)。レンダラーは正しいので、私は<input>このようにレンダリングするために使用されたものを持っています
<input name="myForm:test1" id="myForm:test1:0" value="0" type="radio">
今このようにレンダリングします
<input name="foo" id="myForm:test1:0" value="0" type="radio">
ただし、フォームを送信するとELが機能しなくなります(h:commandButtonとp:commandButtonについても同じです)。だから私がこれを持っているなら
<xxx:selectOneRadio id="test1" value="#{myBean.selectedFood}">
次にEL作業をselectedFood行い、修正値を出力しますが、入れたら
<xxx:selectOneRadio id="test1" value="#{myBean.selectedFood}" groupId="foo">
これによりname=foo、<input>タグが作成されます。その後、ELバインディングは機能を停止します。selectedFoodですnull。
もっとおもしろいことに、これを入れたら
<xxx:selectOneRadio id="test1" value="#{myBean.selectedFood}" groupId="myForm:test1">
これmyForm:test1は正しいクライアントIDであり、ELバインディングが再び機能するため、バインディングが機能しなくなるのは私のコードではないようです。JSFは、クライアントIDに対するタグのname属性を必要としますか?input