JavaServer FacesJSF)是一个为网络应用程序构建基于组件用户界面Java规范[1],并已通过JCP格式化为Java EE的一部分。它也是一个MVC Web应用框架,通过在页面中使用可重用的UI组件简化了基于服务器的应用程序的用户界面(UI)。[2]

JavaServer Faces
当前版本2.3.0(Mojarra参考实现)(2017年3月28日 (2017-03-28)
预览版本2.4.0 SNAPSHOT(Mojarra参考实现)(2017年3月28日 (2017-03-28)
源代码库 編輯維基數據鏈接
编程语言Java
类型Web应用框架
许可协议
編輯維基數據鏈接
网站javaee.github.io/javaserverfaces-spec/

版本

编辑
  • JSF 2.3 (2017-03-28) — Major features: search Expressions, extensionless URLs, bean validation for complete classes, push communication using WebSocket, enhanced integration with CDI.
  • 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库。

JavaServer Faces技术好处

编辑

引入了基于组件和事件驱动的开发模式,使开发人员可以使用类似于处理传统界面的方式来开发Web应用程序。提供了行为与表达的清晰分离。 不用特别的脚本语言或者标记语言来连接UI组件和Web层。JSF技术API被直接分层在Servlet API的顶端。 技术为管理组件状态提供一个丰富的体系机构、处理组件数据、确认用户输入和操作事件。

JavaServer Faces应用程序

编辑

典型的JSF应用程序包含下列部分:

  • 一组JSP页面
  • 一组后台bean(为在一个页面上的UI组件定义的属性和函数的JavaBean组件)
  • 应用程序配置资源文件(定义页面导航规则、配置bean和其它的自定对象,如自定义组件)
  • 部署描述文件(web.xml)
  • 一组由应用程序开发者创建的自定义对象(有可能)
  • 一些可能包含自定义组件、约束、转换器或者监听器的对象
  • 为在页面中表现自定义对象的一组自定义tag

包含JSP页面的JSF应用程序也使用由为了表现UI组件和在页面上的其他对象的JSF技术而定义的标准的tag库。

JavaServer Faces应用程序开发角色

编辑
  • 页面作者:使用JSF标记库创建页面。
  • 应用程序开发者:编写自定义转换器、约束、监听器和后台bean。
  • 组件作者:创建自定义UI组件和实施者(renderer)。
  • 应用程序建造者:配置应用程序,包括定义导航规则、配置自定义对象和创建部署描述文件。

参见

编辑

参考资料

编辑
  1. ^ JavaServer Faces Technology. [2017-05-09]. (原始内容存档于2010-08-19). 
  2. ^ JSF 2.0 Tutorial (HTML). mkyong. 2010-12-12 [2017-04-28]. (原始内容存档于2020-11-12). JavaServer Faces (JSF) 2.0, is an MVC web framework which focus on simplifies building user interfaces (comes with 100+ ready UI tags) for Java web application and make reusable UI component easy to implement. 

外部链接

编辑

📚 Artikel Terkait di Wikipedia

Jakarta EE

- Java消息服务(Java Message Service) JMX - Java Management JNDI - Java名稱与目录接口(Java Naming and Directory Interface) JSF - Java Server Faces JSP - Java服务器页面(Java

RichFaces

RichFaces是一個開放原始碼的JavaServer Faces組件庫,幫助企業級Java應用程式集成AJAX相關的功能,由WildFly(原名JBoss)提供支援。 除了通常的JavaServer Faces組件庫以外,RichFaces亦提供以下功能: 簡易皮膚更換功能 幫助製作其他JSF組建的CDK

JSP

JSP(全称Jakarta Server Pages,曾称为JavaServer Pages)是由昇陽電腦公司主导建立的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML或其他格式文档的Web网页,然后返回给请求者。JSP技术以Java

Apache软件基金会

Lucene:高性能的,基于Java语言的全文检索项目。 Maven:项目集成构建工具。 MyFaces:一个JavaServer Faces(JSF)的实现框架。 mod_perl:为Apache服务器提供Perl语言整合的项目。 POI:提供API以供JAVA程式對Microsoft Office格式檔案的讀/寫。 OpenOffice:提供开源办公文档套件。

Java平臺

Java平台即由Java程式語言所撰寫的軟體賴以執行的平台,是Java軟體和電腦系統的中介,最初被設計用在 Applet 等桌面端程式,不過後來逐漸轉移到伺服端的運用。 Java SE Java EE Java ME Java EMBEDDED Java Card Java TV Java 執行環境,即 Java

Wicket

Apache Wicket,通常称为Wicket,是一种轻量级的基于组件的Java Web应用框架,其概念类似于JavaServer Faces和Tapestry。它最初由乔纳森·洛克在2004年4月编写。2005年6月发布1.0版。2007年6月,它成功成为Apache顶级项目。

Tapestry

程序框架。Tapestry采用了组件的概念。程序员可以应用现有的组建或自定义应用程序相关的组建来构建应用程序。相对与现有的其他Web应用程序框架而言,应用Tapestry会让程序员从烦琐的,不必要的底层代码中解放出来。 Struts Spring Framework JavaServer Faces

JMX

technology)),以及对故障或状态变化等的通知事件(通过推送)。 Java EE 6规定,托管Bean是一种Bean类。如果一个Java的外部类被其他Java EE规范(例如JavaServer Faces规范)定义为托管Bean,或者它满足下述所有条件,那么这个类就是一个托管Bean: