jsf

Java構建框架

JavaServer Faces (JSF) 是一種用於構建Java Web 應用程序的標準框架(是Java Community Process 規定的JSR-127標準)。它提供了一種以組件為中心的用戶界面(UI)構建方法,從而簡化了Java伺服器端應用程序的開發。由於由Java Community Process (JCP) 推動,屬於Java EE 5中的技術規範,而受到了廠商的廣泛支持。

版本


• JSF 2.2 (2013-04-16) — JSF 2.2 introduced new concepts like stateless views, page flow and the ability to create portable resource contracts.
• JSF 2.1 (2010-10-22) — Maintenance release of 2.0. Only very minor amount of spec changes.
• JSF 2.0 (2009-06-28) — Major release for ease of use, enhanced functionality, and performance. Coincides with Java EE 6.
• JSF 1.2 (2006-05-11) — 核心繫統和API改進. Coincides with Java EE 5. Initial adoption into Java EE.
• JSF 1.1 (2004-05-27) — 錯誤修復,沒有更改規範.
• JSF 1.0 (2004-03-11) — 初始規範發布.

主要組件


為了展現UI組件和管理它們的狀態,操作事件、伺服器端的確認和數據變換;定義頁面導航;支持國際化和可訪問性;提供對所有特性的可擴展性的API為了在JSP中表示UI組件和拍發組件給伺服器端對象的兩個JSP自定義tag庫。

技術好處


引入了基於組件和事件驅動的開發模式,使開發人員可以使用類似於處理傳統界面的方式來開發Web應用程序。提供了行為與表達的清晰分離。不用特別的腳本語言或者標記語言來連接UI組件和Web層。JSF技術API被直接分層在Servlet API的頂端。技術為管理組件狀態提供一個豐富的體系機構、處理組件數據、確認用戶輸入和操作事件。

應用程序


典型的JSF應用程序包含下列部分:
• 一組JSP頁面
• 一組後台bean(為在一個頁面上的UI組件定義的屬性和函數的JavaBean組件)
• 應用程序配置資源文件(定義頁面導航規則、配置bean和其它的自定對象,如自定義組件)
• 部署描述文件(web.xml)
• 一組由應用程序開發者創建的自定義對象(有可能)
• 一些可能包含自定義組件、約束、轉換器或者監聽器的對象
• 為在頁面中表現自定義對象的一組自定義tag
包含JSP頁面的JSF應用程序也使用由為了表現UI組件和在頁面上的其他對象的JSF技術而定義的標準的tag庫。

開發角色


頁面作者:使用JSF標記庫創建頁面。
應用程序開發者:編寫自定義轉換器、約束、監聽器和後台bean。
組件作者:創建自定義UI組件和實施者(renderer)。
應用程序建造者:配置應用程序,包括定義導航規則、配置自定義對象和創建部署描述文件。