當用戶首次訪問XPage時,JSF生命週期階段6(渲染響應)是唯一執行的階段?執行正確的術語?當XPage首次通過使用JSF階段的URL加載時?
回答
GET與POST請求的處理方式不同。 GET'需要最少量的處理(createView/restoreView [aka。Phase 1 - RESTORE_VIEW],然後是renderResponse [aka。Phase 6 - RENDER_RESPONSE]。
XPage Core Runtime確實建立在JSF之上...但是在執行請求處理生命週期方面存在差異 - XPages提供優化來處理複雜的Ajax處理,複雜的部分執行等等。有效地,GET請求的第1階段執行createView/restoreView函數,但繞過某些階段監聽/通知步驟以確保GET請求的最大吞吐量
我在OpenNTF.org/XSnippets上提供了一個簡單示例,以幫助人們在不同環境下使用XPage請求處理生命週期檢查/實踐ances。我鼓勵你看看:
http://openntf.org/XSnippets.nsf/snippet.xsp?id=xpages-request-processing-lifecycle-explorer-code ...
編輯:Here有人解釋他對XPages生命週期的觀察。由於缺乏文件,他自己做了測試。也許它有點老了。
我不知道肯定,但對JSF的XPages基地,所以我會建議所有 JSF-階段獲得通過循環:
Restore View -> Apply Request Values -> Process Validations -> Update Model Values -> Invoke Application -> Render Response
但也有一定的方法來打斷這些階段。
希望這個幫助,玩得開心!
是的,在初始頁面加載時,它會直接跳轉到渲染響應。當你考慮其他階段的工作時,這是有道理的。沒有數據需要驗證,因爲用戶還沒有機會提交任何數據;他們也不能調用任何事件等。所以第一個請求只是呈現,而後續請求會經歷整個生命週期,除非驗證失敗或被跳過。
是的,「執行」是正確的術語。 :)
感謝您的回答蒂姆。 – 2012-03-13 19:36:32
- 1. 當使用PrettyFaces(JSF)時跳過的階段
- 2. 通過分階段下載加速應用程序加載
- 3. JSF/Primefaces - Ajax請求有時會跳過JSF階段
- 4. skip jsf lifecylce階段
- 5. 當圖像首次加載使用功能隱藏時,再次發生功能
- 6. 通過階段webview中的HTML頁面加載本地文件
- 7. 通過API訪問階段計時
- 8. 是否可以使用JSF 1.2動態加載階段偵聽器?
- 9. JSF生命週期階段
- 10. Angularjs $ on $ routeChangeSuccess首次加載時出錯
- 11. 首次加載時清除Cookie
- 12. 加載UI路由器狀態,當網站首次加載
- 13. 當嘗試使用JSF在IFrame中加載JSP時的NPE
- 14. 通過編號加載JSF頁面
- 15. 加載childViewControllers首次登錄
- 16. 首次加載問題,setInterval
- 17. RecyclerView不會在首次啓動時使用FirebaseRecyclerAdapter加載數據
- 18. 加載外部SWF帶階段引用
- 19. 如何從第一階段加載第二階段啓動加載器?
- 20. iOS應用程序首次通過URL打開時崩潰計劃
- 21. Office 2007加載項首次加載需要很長時間
- 22. 初始化QuartzScheduler當容器首次加載Web應用程序
- 23. JavaFX的階段,當組件添加
- 24. 加載特里首次應用打開
- 25. ML和DL4J通過例子的階段
- 26. 每當報告階段關閉時,主階段即將關閉
- 27. 使用JSF添加頁面查看器到Xpage
- 28. kinetic.js加載階段...失去的基準
- 29. 在Capistrano中,當我指定非默認階段時,兩個階段都會加載
- 30. 通過URL發送參數的JSF 2
託尼 - 很好的解釋。謝謝! – 2012-03-13 17:12:18
託尼 - 事實上,我問這個問題的原因是在查看您共享的XPages生命週期示例之後。我注意到階段監聽器實際上並沒有被記錄。 – 2012-03-13 17:13:44