JSF是基于组件的规范还是基于facelets的规范

时间:2016-02-09 15:27:10

标签: jsf jsf-2 facelets

JSF :根据Wikipedia,JSF是一个Java规范,用于为Web应用程序构建基于组件的用户界面。

Facelets :是Apache许可下的开源Web模板系统,是JavaServer Faces(JSF)的默认视图处理程序技术(也称为视图声明语言)。

所以我的问题是

  1. JSF是基于组件的规范还是基于facelets的规范,因为默认情况下所有这些组件都是在facelets上设置的。
  2. 我们可以说facelets本身就是一个组件或JSF的一个特性,因为JSF还通过支持bean传递回调。

1 个答案:

答案 0 :(得分:4)

JSF可以使用任何视图技术。以前这是JSP。然后是Facelets。通过ViewDeclarationLanguage界面,您可以定义和插入自己的界面。甚至像Arjan Tijms这样基于Java的博客也写过:Authoring JSF pages using pure Java

视图技术基本上指定了如何定义JSF组件树的方式。 JSF基于视图构建组件树(#ifdef _WIN32 _popen(" ", "w"); #else popen(" ", "w"); #endif 实例),然后基于组件树处理请求,然后基于组件树呈现响应。这一切都完全独立于所使用的视图技术。

知道这个事实,答案更直接:

  1. Facelets只是JSF的默认视图技术(至少从JSF 2.0开始)。组件树未在Facelets中设置,它在UIViewRoot实例中设置。

  2. Facelets提供了一种通过XHTML + XML定义JSF组件树的简便方法,XHTML + XML是一种非常适合嵌入HTML代码并转换为HTML的标记语言。

  3. 另见: