JavaServer Faces (JSF) 是一种用于构建Java Web 应用程序的标准框架(是Java Community Process 规定的JSR-127标准)。它提供了一种以组件为中心的用户界面(UI)构建方法,从而简化了Java服务器端应用程序的开发。由于由Java Community Process (JCP) 推动,属于Java EE 5中的技术规范,
技术的主要组件
为了展现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)。
应用程序建造者:配置应用程序,包括定义导航规则、配置自定义对象和创建部署描述文件。