コンポーネント(質問)がすべてプログラムでバッキングBeanに生成されるアンケートフォームがあります。
フォーム送信イベントでは、すべてのユーザー入力を収集してデータベースに保存する必要があります。
しかし、JSFは動的に生成されたコンポーネントを認識せず、Faceletsページにあるパネルグリッドと送信ボタンであるコンポーネントのみを検出します。これは私のsubmit()メソッドです。
public boolean submit() {
UIViewRoot viewRoot = FacesContext.getCurrentInstance().getViewRoot();
UIComponent formComponent = viewRoot.findComponent("mainForm"); //form id
HtmlForm form = (HtmlForm)formComponent;
List<UIComponent> componentList = form.getChildren();
for(int p=0; p<componentList.size(); p++) {
UIComponent component = componentList.get(p);
System.out.println("The Component ID is:"+component.getId());
}
return true;
}
それで、誰かが私が上記の方法以外の私のコンポーネントをどこで狩ることができるか知っていますか?