ページの左側にある layoutUnit のツリーと、ページの中央にある layoutUnit の dataArea (決定される) です。ノードが選択されると、適切な DAO メソッドが呼び出され、オブジェクトが返されるように、ツリー メニューが機能しています。問題は、オブジェクトがページの左側にあるツリーのフォームに返されることです。
私の質問は、返されたオブジェクトをページの中央に配置するにはどうすればよいですか? これを行うためのJSFメカニズムはありますか?
ページの左側にある layoutUnit のツリーと、ページの中央にある layoutUnit の dataArea (決定される) です。ノードが選択されると、適切な DAO メソッドが呼び出され、オブジェクトが返されるように、ツリー メニューが機能しています。問題は、オブジェクトがページの左側にあるツリーのフォームに返されることです。
私の質問は、返されたオブジェクトをページの中央に配置するにはどうすればよいですか? これを行うためのJSFメカニズムはありますか?
コンポーネントのselectイベントを利用して、<p:tree>
選択したノードに基づいてページのdataAreaを更新するajax呼び出しを発行できます。
例えば:
<p:tree value="#{treeBean.model}" dynamic="true">
<p:ajax event="select" listener="#{treeBean.onNodeSelect}" update="form2:dataArea"/>
...
</p:tree>
onNodeSelectでは、コントローラーのインスタンス変数に、dataAreaに表示する値を入力します。update属性を"form2:dataArea"に設定すると、ページはdataAreaを最新の状態に更新します(そして、インスタンス変数に配置したデータを取得します)。「form2:dataArea」は、2番目のフォームIDとdataAreaのIDがどのようにラベル付けされているかを推測するためのものであることに注意してください。