LoginSignup
0
0

More than 5 years have passed since last update.

dialogReturnイベント時、updateでコンポーネントを指定しても更新されないので調べた

Last updated at Posted at 2016-12-18

dialogframeworkで開いたダイアログから帰ってきた値で画面上の項目を更新したいので以下のように記述した。

<p:ajax event="dialogReturn" listener="#{hoge.fuga}" process="comp" update="comp" />

同画面に"comp"というidを持つコンポーネントが存在し、"hoge.fuga"というメソッドの中で"comp"の値を変更している。

が、この記述では値が更新されない。
原因は実行順で、
listener
processによるpost
update
の順番になる。
listenerで更新した値がprocessによって変更前の値で上書きされてしまうので変更されていないように見える。

hoge.fugaの中でcompの値を使いたい場合はダイアログを呼び出すボタンなどのprocessにcompを記述すればいい。

感覚としてはprocess、listener、updateの順番だと思うけど…
p:ajaxにprocessを記述できる意味もなくなってるし変な仕様。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0