skillup

技術ブログ

Java

JSF リダイレクト後のメッセージ&disabled=true

投稿日:

少々細かいですがJSFネタです。

リダイレクト後のメッセージ

  1. JSFからManagedBeanのメソッドを呼び出す、
  2. 何らかの処理
  3. メッセージをFacesMessagesに入れる
  4. リダイレクト
という一連の手続きの場合、画面にメッセージが保存されていません。
下記のようにしましょう。
参考リンク

h:commandbutton disabled=trueについて

削除ボタン実装時に起こりました。どういう仕様かというと・・

  • 画面は商品データの一覧でチェックボックスあり、チェックボックスにチェックを入れて削除ボタンを押すと該当レコードが削除される
  • ただし、ボタンがついていない場合、削除はできない。つまり画面読み込み時には削除ボタンが押せないようにする

この場合、htmlで<input type=”button”などにdisabled =”disabled”のようなプロパティを設定し、ボタンチェックをトリガーにしてdisabledのプロパティをJavaScriptで変更するということをやろうとしました。

JSFでもh:commandButtonにてdisabled=trueを設置すると確かに読み込み時にはボタンが押せず、チェックボックスに値を入れるとボタンが押せるようにはなるのですが、該当するメソッドに飛びません。(action属性が無効になっている)

どうやらJSFとManagedBeanの連携機能自体にも影響があるようです。

対処法としてはJSFにはdisabled=trueを書かずに、JavaScriptで画面読み込み時にdisabled =trueにしてあげれば大丈夫です。

直接の対処はありませんでしたがcommandButtonの記述があったリンクです。

参考リンク

-Java
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

Messageプロパティの設置方法

JavaEEに限らず、エラーメッセージなどは通常、プログラムの中に書くのではなく、できればエラーメッセージファイルの中で管理するのが望ましいでしょう。 またJSF側の名称の表示なども直接xhtmlの中 …

no image

JSFでのjQuery

JSFでのjQueryの取得 以前、Seleniumに関連したエントリーを書いたときにJSFではidが親要素を伴うと書きました。 例えば <form id=”form1″ …

no image

HTML&JSなど画面まわり&サーブレット小ネタ

サーブレットでアプリ作ってますが、画面まわりに関していろいろいじっているのでそこら辺のネタなんかを。 Contents1 テーブルの結合2 JSPでの動的HTML→POSTで認識できない3 動的プルダ …

no image

Javaでのコーディングで気を付けること

会社でSoftWareDesignを定期購読しており、Javaのコーディングで気をつけることなどがあったので、ちょっとチェック。 以前も似たようなエントリーは書いたことがあったのだけど、再確認。メモ書 …

no image

CIことはじめ

業務でJavaのテキスト変換ツールを作成。 プログラムよりもCIツールを使って他人の環境下で正常に稼動させるためにどうするかの調査に時間かかりましたね。 今回やりたかったことは下記の通りです。いわゆる …