1

seamを使用して、pages.xmlで、クエリ文字列パラメーターの値をキャッチし、次のようにバッキングBeanに配置できます。

  <page view-id="/my/page.xhtml" >
    <param name="myParam" value="#{myActionBackingBean.param}" />
    <action execute="#{myActionBackingBean.doAction()}" />
  </page>

私が読んだ限りでは、これはバッキングBeanから値を取り出し、リダイレクトを介してクエリ文字列に戻します(つまり、双方向バインディングを定義します)。

私が取り組んでいるプロジェクトには、次のように、パラメーターが重複しているページがいくつかあります。

  <page view-id="/my/page.xhtml" >
    <param name="myParam" value="#{myActionBackingBean.param}" />
    <param name="myParam" value="#{myDifferentBackingBean.param}" />
    <action execute="#{myActionBackingBean.doAction()}" />
  </page>

これはコンパイルして正常に実行されるようですが、eclipseは、2番目のパラメーター名の「値myParamが一意ではありません」というエラー(最近の更新、場合によってはプラグインの更新以降)の報告を開始しました。

  • eclipseが示唆しているように、このような重複するparamタグは無効ですか?
  • 2番目のケースで予想される最も可能性の高い動作は何ですか?
  • クエリ文字列パラメータの値を2つのBeanに取得する別の方法はありますか(<action>たとえば、ELを使用して一方から他方にコピーするためにを使用して行うことができます)

私は学ぶべき継ぎ目とELがたくさんあるので、これらの質問が素朴に思えるなら、どんな良い情報源にも感謝しています。

4

1 に答える 1

0

おそらく、そうするための最良の方法は、情報を保持するためだけに別のBeanを作成し、それを単にそれにバインドすることです。

次に、それをmyActionBackingBeanとmyDifferentBackingBeanに注入できます。

それ以外の場合は、@Createメソッドでコピーできます。

于 2011-09-23T13:04:38.467 に答える