私は、データ取得のためのユーザ生成クエリを提出するレポートページを持っています。クエリのデータが存在しない場合、私はfacesmessage- "No data"をセッションに追加し、送信ボタンに関連付けるので、ボタンの隣に表示されます。 ユーザーがクエリを変更して再送信すると、 'no data' msgがクリアされます。私はこれを行う方法を見つけることができませんでした。私はsessionmapまたはrequestmapにメッセージを見つけることができなかったので、removemessage()を使うことができませんでした。 当分の間、私はfacesmessagesを空白の要約と詳細に設定してハックを使用しています。送信されたクエリごとにmsgをクリアするにはどうすればよいですか?JSF各リクエスト後にfacesmessageをクリアする
ありがとうございました。
BalusC、
は返信ボタンを見つけることができませんでしたので、私はオリジナルのポストに
を編集していますここで私が持っているものです。 JSF 1.2、 RichFacesの3.3
バッキング私のレポートページのbeanはsessionscopedです。ページには、レポートタイプを選択するためのドロップダウンメニューと、アクション(genrep)に接続された送信ボタンがあります。このボタンはrich:messageタグに関連付けられています。
レポートタイプを選択して送信すると、genrep()はデータベースが存在するかどうかをチェックし、存在しない場合はfacesメッセージをインスタンス化し、&サマリーを「データなし」に設定して送信しますボタンをfacecontextのaddmessageメソッドを使用して実行します。
ユーザーがデータを持つ別のクエリを送信すると、genrep()はfacescontextから応答ストリームを取得し、contentypeを "application/vnd.ms-excel"に設定してデータを書き込みます。閉じて&はストリームをフラッシュし、responsecomplete()を呼び出します。それ以外の場合は、以前のデータクエリのボタンの横に「no data」というメッセージが表示されます。
ありがとうございました。ユーザーがデータ、genrepを()のFacesContextから応答ストリームを取得している別のクエリを送信
これは既定の動作です。メッセージはリクエストスコープです。テストケースに関する技術的な詳細を詳しく述べる必要があります(必要に応じてSSCCEを提供してください)。 – BalusC
オリジナルの投稿が編集されました。チェックしてください。おかげさまで – pr101