理解ADF Faces Life Cycle

ADF Faces Life Cycle繼承自JSF Life Cycle,但是對JSF Life Cycle進行了擴展,添加了一些新的功能。比如:客戶端的Value Life, 允許單獨提交請求的SubForm控件,和新增的Scope。如下圖:

NOTE: 圖1,2,3,4,5分別來自於下面Oracle的官方文檔:

http://www.orastudy.com/oradoc/selfstu/fusion/web.1111/b31973/af_lifecycle.htm#ADFUI9852

 

圖1

 

ADF控件的immediate屬性用來改變控件在ADF Faces Life Cycle中狀態的遷移在,比如:

如果設置按鈕的immediate屬性爲true的話,那麼按鈕的ActionEvent就會在APPLY REQUEST VALUE狀態之後分發,最後跳過中間所有的狀態,直接到RENDER RESPONSE狀態.

如果設置輸入框的immediate屬性爲true的話,那麼輸入框的值轉換,驗證,事件分發等都會提前到APPLAY REQUEST VALUE狀態進行,而不是原先的PROCESS VALIDATION狀態。

 

下面的表格依次介紹了設置了immediate屬性的文本框組件,按鈕組件在發送請求時,ValueChangeEvent和ActionEvent事件處理的時機以及Life Cycle狀態的遷移情況:

1. 非Immediate文本框,非Immediate按鈕組合,參見表格中的1-3行以及圖2;

2. 非Immediate文本框,Immediate按鈕組合,參見表格中的4-6行以及圖3;

3. Immediate文本框,非Immediate按鈕組合,參見表格中的7-9行以及圖4;

4. Immediate文本框,Immediate按鈕組合,參見表格中的10-14行以及圖5;

 

 

圖2

 

圖3

 

圖4

 

 

圖5

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章