JSF之Action 與ActionListener的區別

來源:互聯網
上載者:User

標籤:style   blog   strong   檔案   width   資料   



 事件  檢驗  參數  事件產生  頁面跳轉
 Action  有 無參數,不傳入當前控制項,有返回值    當銨鈕被單擊時產生事件.提交表單   返回頁面---根據設定檔跳轉
 ActionListener   有  傳入當前控制項,無返回值   當銨鈕被單擊時產生事件.提交表單   返回本頁面
 ValueChangeListener    有   傳入當前控制項,無返回值   不提交表單(需指定其onchange/onclick="submit"才自動認可表單  返回本頁面

 

action():處理的是商務邏輯.實際上JSF會自動產生一個"預設的ActionListener"來處理事件,並根據其返回值決定頁面跳轉,第五階段調用應用執行會影響到頁面間的導航(navigation),主要處理一些商務邏輯並返回幾個商務邏輯結果(String類型),JSF的導航系統將會根據這個來選擇恰當的下一個頁面.會提交表單.

 

actionListener(ActionEvente):處理頁面上組件的"監聽事件",第五階段調用應用執行不會影響到導航.主要操作當前頁面內的組件,或者是進行一些業務模型上的改變,或者是修改backingbean(託管Bean)的屬性等,並不會出現在頁面間的跳轉。會提交表單.

 

 valueChangeListener(ValueChangeEventevent):處理頁面上組件值變化的"監聽事件",第三階段驗證請求值"執行

 

ActionListener(事件監聽器):是用於解決隻影響使用者介面的事件,

特別地,在beans的form資料被載入和觸發驗證前被調用      ,用immediate=“true”指明這個行為不觸發驗證 , 在監聽器調用後,會重新顯示表單,不應用導航規則,不重新導向頁面

Action :隸屬於按鈕、超連結和圖形映射控制項,自動認可對應表單

ValueChangeListener:隸屬於單選框、組合框、列表框、複選框、文字框等控制項,需要用onclick=“submit()”或onchange=“submit()”的方式提交表單

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.