2012-04-10 48 views
11

我對JSF的理解還很淺。JSF 2.0 RenderResponse和ResponseComplete

我讀的文件,爲每FacesContext

的javadoc存在的renderResponse和了responseComplete,讓您短路的生命週期。

我目前很困惑..你什麼時候在真實情況下使用那個?

感謝

如果你想現在向前邁進,呈現響應階段

回答

25

使用FacesContext#renderResponse()。您通常會結合在驗證階段運行的值更改偵聽器黑客並且應該跳過更新模型值並調用操作階段。

使用FacesContext#responseComplete()來向JSF發信號表明您已經處理了自己的響應並且JSF因此不需要呈現響應。您經常會看到這通常與支持將響應中的文件下載文件下載的bean操作方法結合使用。這將確保JSF不會將文件下載附加到呈現的HTML內容中,該內容可能以損壞的下載或非法狀態異常結束。