2014-04-29 122 views
0

Hy,JSF和組件樹狀態

我一直在閱讀有關JSF組件樹狀態的概念,但我仍然沒有明白。我的意思是,我已經讀過這個組件樹是一個數據結構,但是當我看到像UIForm這樣的類時,UIinput我不知道爲什麼這些類被使用了,爲什麼?

  1. 此組件樹用於存儲提交表單的值嗎? 我認爲這並不是因爲這些值是在模型bean中保存的,所以 這個組件樹的效用是什麼?

    2。此組件樹存儲視覺信息或邏輯信息?我的意思是,因爲我看到像UIForm這樣的類,似乎在服務器中表示了一個html表單,但我不知道該組件樹是否在此組件樹上存儲了視覺信息(寬度,div長度等)還是隻是校驗器,會話器,輸入...的html表單。

  2. 這個組件樹用於創建,因爲例如
    提交表單的「形象」,如果用戶按下回到瀏覽器,它會得到的形式與他們的價值觀,因爲它是 提交?

感謝

回答

0

1)組件是在XHTML頁面中定義的。

2)處理請求時,「text」XML將在組件樹中「編譯」。這樣,JSF就可以知道輸入值「myTable:2:name = Mike」是myTable表第三行的「名稱」字段。還會知道該值映射到模型bean的employees屬性的第三項的firstName屬性。 3)如果一切正常(數據類型,轉換器,驗證器...),隨着樹的數據更新模型在稍後階段(我認爲它是4,但檢查JSF生命週期無論如何)。

4)生成HTML時,將探索組件樹,以便每個組件都繪製與其渲染相關的HTML。