没有JSF的Facelets

Der*_*Der 6 java jsf jsp servlets facelets

我正在学习Java语言并期待编写非常小的Web应用程序,因为Facelets似乎是JSP的替代品,并且JSF对于小型Web应用程序来说似乎有些过分,我是否可以学习Facelets并在没有整个JSF堆栈的情况下使用它?或者我应该使用JSP来获取这些小型网络应用程序?

Bal*_*usC 5

可以在没有JSF的情况下使用.只需在地图FacesServlet上的URL模式*.xhtmlweb.xml,做申报

xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"
Run Code Online (Sandbox Code Playgroud)

在任何Facelet模板中.声明它们实际上并没有坏处,但这样你就不会"意外地"使用它们.您可以在其中编写纯HTML,并将表单提交给普通的servlet,并将servlet转发/重定向到Facelet.

您只需要记住,使用servlet,您最终会得到更多的样板代码,用于收集请求参数,转换/验证它们,维护和更新模型值,调用业务操作,而所有这些重复的样板代码都是不必要的.使用一个完整的JSF托管bean.

此外,您不能将Facelets与基于请求的MVC框架一起使用,这些框架只有JSP标记库可用,如Struts,Spring MVC等.


Adr*_*tev 0

Facelets 是为了满足 JSF 的需要而开发的,因此依赖于 JSF。如果您需要 JSP 模板,只需使用 <@import> 或更高级的库,如Apache Tiles