【PrimeFaces】YesNoダイアログが開かない。(すぐ閉じる)

コマンドボタンをクリックして、YesNoダイアログを出したいが、押すとすぐに画面が閉じてかつYesの処理が実行されてしまう。

原因は二つ

  1. コマンドボタンの「ajax=”false” 」
    これは、ajax=trueもしくは未設定でOK。ファイルダウンロードを呼び出したいときにajax=falseでないといけない事象があってそれを流用したのが失敗。
  2. Yesボタンの「 onclick=”#{salesSummaryController.deleteRow()}”」
    これはactionListenerに設定しなければいけない模様。

<p:commandButton id=”deleteButton” icon=”ui-icon-trash” value=”選択行を削除”
onclick=”PF(‘dlgYesNo’).show();”
ajax=”false”
disabled=”#{empty salesSummaryController.selectedItem}”/>
<p:dialog widgetVar=”dlgYesNo”>
<p:outputLabel value=”選択行を削除します。よろしいですか?”/>
<br/>
<p:commandButton id=”cmdyes” value=”はい”
onclick=”#{salesSummaryController.deleteRow()}”
oncomplete=”PF(‘dlgYesNo’).hide()” styleClass=”ui-confirmdialog-yes” update=”:messages,:SalesSummaryListForm” />
<p:commandButton id=”cmdno” value=”いいえ” oncomplete=”PF(‘dlgYesNo’).hide()” update=”:SalesSummaryListForm” styleClass=”ui-confirmdialog-no” />
</p:dialog>

 

<p:commandButton id=”deleteButton” icon=”ui-icon-trash” value=”選択行を削除”
onclick=”PF(‘dlgYesNo’).show();”
disabled=”#{empty salesSummaryController.selectedItem}”/>
<p:dialog widgetVar=”dlgYesNo”>
<p:outputLabel value=”選択行を削除します。よろしいですか?”/>
<br/>
<p:commandButton id=”cmdyes” value=”はい”
actionListener=”#{salesSummaryController.deleteRow()}”
oncomplete=”PF(‘dlgYesNo’).hide()” styleClass=”ui-confirmdialog-yes” update=”:messages,:SalesSummaryListForm” />
<p:commandButton id=”cmdno” value=”いいえ” oncomplete=”PF(‘dlgYesNo’).hide()” update=”:SalesSummaryListForm” styleClass=”ui-confirmdialog-no” />
</p:dialog>

JAVAEEのJDBCレルム認証でログインエラー

「JAVAEEのJDBCレルム認証でログインエラー」

これ自体は別に起こっても問題ないのですが、ログを見てもいまいち根本原因がわからない。
なので、いろんな角度から原因を探っていくしかないのですが、とりあえず認証情報として渡している内容に齟齬はない。
で、2環境で一方はうまくいってもう一方がだめという状態だったので、とりあえず同じDBに接続して確認。
するとうまくいっていたほうもうまくいっていなかったので、realmの設定をとりあえずもう一回見てみたところ原因判明。

ユーザーマスタのテーブル名を変更して、片方しかrealmの参照DB設定を変更していなかったのが原因でした。

忘れたころに発生したらもしかしたら、調査の一助になるかもしれないのでメモ