我正在学习Java语言,并希望编写非常小型的web应用程序,既然Facelets似乎是JSP的替代品,而JSF对于小型web应用程序来说似乎有点过分了,我可以只学习Facelets并在没有整个JSF堆栈的情况下使用它吗?或者我应该只为这个小的web应用程序使用JSP?
发布于 2012-07-20 23:02:16
它可以在没有JSF的情况下使用。只需将FacesServlet映射到web.xml中的*.xhtml的URL模式上,而不是而不是声明
xmlns:f="http://java.sun.com/jsf/core"
xmlns:h="http://java.sun.com/jsf/html"在任何Facelet模板中。声明它们实际上没有什么坏处,但是这样你就不会“意外”地使用它们了。您也可以在其中编写普通HTML,并将表单提交给普通servlet,然后将servlet转发/重定向到Facelet。
您只需记住,使用servlet,您最终会得到更多的样板代码,用于收集请求参数、转换/验证它们、维护和更新模型值、调用业务操作,而使用完整的JSF托管bean则不需要所有这些重复的样板代码。
此外,您不能将Facelets与基于请求的MVC框架一起使用,这些框架只有JSP标记库可用,如Struts、Spring MVC等。
发布于 2012-07-20 22:58:48
Facelets是为JSF的需要而开发的,因此依赖于JSF。如果您需要JSP的模板,只需使用<@import>或更高级的库作为Apache Tiles。
https://stackoverflow.com/questions/11569097
复制相似问题