私はグラスフィッシュ3.1.2でJSF 2でPrimeFaces 3.2を使用しています。
さまざまな問題に関する情報を含む検索結果を表示する が<p:dataTable>
あります (問題はユーザーに割り当てられます)。割り当てられたユーザーのアイコンをクリックすると、<p:dialog>
ポップアップが表示されます。ユーザー アイコンと対応するダイアログは、コンポジットを使用して実装されます。コンポジット内で、ダイアログ コンポーネントごとに一意の ID を必要とするいくつかの jQuery 関数を使用しています。この問題を解決する方法が見つかりません。
これまでの私の調査:
リストにユーザーが 1 人しかいない限り、widgetVar 属性を設定する必要がありますが、dataTable 内では、widgetVar は多くのコンポジットに対して一意ではないようです。ユーザーは検索結果内に複数回表示される可能性があるため、次のように widgetVar をセットアップできません。
<ui:param name="myWidgetVar" value="widget_#{user.id}" />
このように使用します
<p:dialog widgetVar="#{myWidgetVar}">
また、 #{cc.id} を使用しても問題は解決しません。これは、常に同じであるネーミング コンテナー部分なしでウィジェットの ID のみを返すためです。
HTML で表示される完全な ID が必要です (例: form:jdt123:dialog:456) - どうすれば取得できますか?
誰も何をすべきか知っていますか?
ありがとうピート