14

JSFについての私の理解はまだ浅いです。

私はドキュメントを読んでいて、FacesContextのjavadocに従っています

ライフサイクルを短縮できるRenderResponseとResponseCompleteがあります。

私は現在混乱しています..実際の状況でどちらを使用するのですか?

ありがとう

4

1 に答える 1

31

FacesContext#renderResponse()今すぐレンダリング応答フェーズに進みたい場合に使用します。これは、検証フェーズで実行される値変更リスナーハックと組み合わせてよく見られ、モデル値の更新をスキップしてアクションフェーズを呼び出す必要があります。

FacesContext#responseComplete()応答を自分で処理したこと、およびJSFが応答をレンダリングする必要がないことをJSFに通知するために使用します。これは、応答にファイルのダウンロードを書き込むバッキングBeanアクションメソッドと組み合わせてよく見られます。これにより、JSFは、レンダリングされたHTMLのコンテンツをファイルのダウンロードに追加しないようにします。これにより、ダウンロードが破損したり、不正な状態の例外が発生したりする可能性があります。

于 2012-04-10T16:16:11.627 に答える