問題タブ [flash-scope]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jsf-2 - からのデータpreRenderView イベント中にフラッシュスコープから取得されたものは、ページネーションまたはソートが実行されると失われます
私はページング可能でソート可能<p:dataTable>
です:
そのデータは、イベント中にフラッシュ スコープから@ViewScoped
Bean に取得されます。preRenderView
ページネーションまたはソートを実行すると、データが失われます。これはどのように発生し、どうすれば解決できますか?
httpresponse - f:selectItems コンポーネントの JSF1095 Flash 警告 "応答は既にコミットされています" を解決するにはどうすればよいですか?
Mojarra の JSF 2.4 で奇妙な動作に遭遇しました。ページから別のページに渡すためにフラッシュパラメーターを使用しています。新しいページに到達するたびに、Postconstruct アノテーション付きメソッドでフラッシュ パラメータを取得します。次に、ページが更新されると、ユーザーは別のページにリダイレクトされます。(リフレッシュ後にフラッシュパラメータが消去されるため)。
同じコードの場合、別のデータ (ハードコードまたはデータベース クエリ) から selectItems を入力すると、このエラー i が発生します。
JSF1095: フラッシュの発信 Cookie を設定しようとした時点で、応答はすでにコミットされていました。フラッシュに保存された値は、次のリクエストでは使用できません。
私はこれに乗りたいのですが、おそらく何か関係があります:
使い方がわかりません。
私は約2を読んだ:
私のリストオブジェクト:
リストオブジェクトにデータを入れます:
私の @PostConstruct メソッド:
jsf - フラッシュ用の発信 Cookie を設定しようとした時点で、応答はすでにコミットされていました。フラッシュに保存された値は使用できません
ビュー スコープの JSF マネージド Bean が 1 つあります。このマネージド Beanのアクション リスナー メソッドでは<p:commandButton>
、次のように別のページにリダイレクトしています。
page.jsf
次のように、フラッシュスコープに保存された電子メールアドレスを受信しているリクエストスコープのBeanにバインドされています。
電子メール アドレスがターゲット Bean で使用できません。ターゲット Bean の電子メール アドレスは、電子メール アドレスを確認できるように、そのアドレスにメッセージが送信されたことを登録したユーザーに示すためにのみ必要です。
サーバー端末で次の警告が生成されます。
警告: JSF1095: フラッシュの送信 Cookie を設定しようとした時点で、応答は既にコミットされていました。フラッシュに保存された値は、次のリクエストでは使用できません。
なぜこれが起こるのですか?私の Mojarra バージョンは 2.2.7 です
jsf-2 - ページのリロード時に JSF フラッシュ スコープ パラメータを保持するにはどうすればよいですか?
フラッシュ スコープを使用して、@viewscoped コントローラー間で設定オブジェクトを渡します。しかし、そのうちの 1 つでページをリロードすると、フラッシュ マップが空になり、設定オブジェクトが初期化されません。ページのリロード時にフラッシュ スコープを保持することは可能ですか?
設定を保存/取得するための私のソースコード:
FistPage.xhtml
FirstPageController.java
SecondPage.xhtml
SecondPageController.java
Mojarra 2.1.29を使用しています
ありがとう
jsf - Mojarra で動作している間、MyFaces でのリダイレクト後に Flash メッセージが表示されない
ViewExpiredException およびその他のエラーを管理するための独自の ExceptionHandlerWrapper があります。
エラーをキャッチし、エラー メッセージを追加して、エラー メッセージが表示されるインデックス ページに (ナビゲーションではなくリダイレクトで) リダイレクトします。
ただし、フラッシュ メッセージは保存されません (ただし、フラッシュ スコープには foo が存在します)。
これは mojarra では機能していましたが、myfaces 2.2.4 に移行したところ、機能しなくなりました。何か案が?(omnifaces 1.8.1 も使用) ありがとうございます。
spring - ViewScoped Bean 間で秘密のユーザー名とパスワードを転送する方法は?
セッションの肥大化を最小限に抑えるために、主にViewScoped Beanを使用しているwebprojektに取り組んでいます。しかし、その後、Bean 間で (データベースなどにアクセスするために) クライアントのユーザー名とパスワードを転送する必要があるという問題に直面します。
次のように、フラッシュ オブジェクトを使用して Bean 間でユーザー名とパスワードを転送するシステムを作成しました。
しかし、ハッカーが何らかの方法でクライアントを操作し、それによってサーバーをだましてフラッシュ オブジェクトを公開することができるのではないかと心配しています。
私が考えている別の解決策は、Web アプリケーションのすべての JSESSIONID を、ユーザー名とパスワードを値としてマップにキーとして格納することです。これを機能させるには、ユーザー セッションが終了または期限切れになったときにコールバック メソッドを呼び出して、関連する JSESSIONID をマップから削除できるようにする必要があると思います。しかし、その解決策の問題は、コールバックを実装する最善の方法が何であるかについて疑問があることです。これにより、サーバーによって新しい同様の JSESSIONID が作成される前に Map エントリが削除されることを 100% 確信できます (たとえ私がこのような短い時間で発生する可能性は非常に低いことを知っておいてください)。
この問題について深い洞察を持っている人が、ベスト プラクティスとこれに対する 100% 安全な方法について書いてくれることを願っています (また、JSF Web アプリケーション サーバーで作業しているほとんどの人がこの問題に遭遇していると思います。問題の最善の解決策を知っている)。ありがとう。