JSF請求處理過程(二) 請求處理過程總覽(FacesServlet#service)
摘要: 這總覽,很明顯是看FacesServlet的service方法。在FacesServlet的初始化過程中,構造出了全局的FacesContextFactory對象和LifeCycle對象。可以把FacesContextFactory看做是一個“請求包裝工廠”,于是很明顯,每當一個請求到達FacesServlet的時候,第一步便是拿著請求,到包裝工廠里面包裝一下,而包裝的結果就是一個FacesContext。
閱讀全文
JSF請求處理過程(一) FacesServlet初始化
摘要: JSF應用中,在web.xml里面配置了一個Servlet,叫做javax.faces.webapp.FacesServlet,于是可以知道,查看、了解一個請求的處理過程可以從這里開始。從官方網站上下載JSF的源代碼,項目名比較古怪,叫做“mojarra”,我看的版本是1.2_12_b01。里面包含了兩個子項目,一個是jsf-api,里面大多是接口以及少量關鍵類。另外一個項目叫做jsf-ri,對著這個"ri"邪念了半天之后,終于在兄弟提醒之下想明白了是reference implementation的意思。jsf-api是JavaEE標準的一部分,里面的類型包名都是以javax.faces開頭的,而jsf-ri項目是sun針對JSF標準的一個參考實現,里面的類型的包名都是以com.sun.faces開頭的。
閱讀全文