を開始したい ことフォームのid
を指定する必要があります。これは、クライアントIDで参照する必要がないため、JSFが自動生成するため、技術的には害を及ぼしません。 IDレス形の内側から
は、例えば、あなたは常にあなたが全体の親フォームを送信および/またはレンダリングすることを知らせるために<f:ajax>
のexecute
で@form
とrender
属性として親フォームを参照することができます。 AJAXの
<f:ajax execute="@form" render="@form" />
しかし、あなたは、例えば参照する必要がある場合別フォームまたはその子要素の一つは、レンダリングあなたがクライアントでそれを参照することができるようになりますように、あなたは、そのフォームに固定されたIDを与える必要がありますID。
実世界のプロジェクトで発生しているもう一つの理由は、Seleniumなどの自動化されたWebユニットテストソフトウェアでは、入力フィールドと送信ボタンを見つける必要があるため固定IDのフォームが必要です。 JSFフォームIDに基づいて作成されます。 JSFフォームIDが指定されていない場合は、すべてのデプロイ/リクエストで入力フィールド名が予測できず、テストできません。
「ベストプラクティス」は基本的に「必要な場合にのみ」です。私自身はちょうどに慣れています。NamingContainer
、UIInput
およびUICommand
のIDを指定すると、常にになります。 "あなたは、決して知らない"。
Webユニットのテストソフトウェアについては、そのうちの1つを使用しているので、われわれの判断を下す可能性があります。 – BestPractices