JSF 2和JSP 2

时间:2012-03-03 11:54:28

标签: jsp jsf tomcat

Tomcat 7.0.x规范版本:

  • Servlet 3.0
  • JSP 2.2
  • EL 2.2。

Tomcat 6.0.x规范版本:

  • Servlet 2.5
  • JSP 2.1

JSP 2.x与JSF(2.1)相同吗?我可以在Tomcat 6中运行JSF 2.1 Web应用程序吗?

3 个答案:

答案 0 :(得分:2)

JSP 2.x!= JSF 2.x他们做了不同的规范。

是的,您可以在Tomcat 6中运行JSF 2.1 Web应用程序,实际上您可以在任何servlet容器中运行JSF。 当然,如果在所选的servlet容器中尚未添加正确的JSF库,您还必须添加它们。

如果你想使用像<h:commandButton action="#{myBean.myAction(myParameter)}"/>这样的EL表达式,你还必须确保EL 2.2 API和实现JAR可用。

答案 1 :(得分:2)

您无法在Tomcat 6中直接运行JSF 2.1 Web应用程序,因为Tomcat只实现了Servlet和JSP。

为了在Tomcat上运行JSF应用程序,您需要添加一个JSF实现(例如Mojarra),如果您想使用它,则需要添加更新的EL jar(参见例如http://javaevangelist.blogspot.com/2011/05/jsf-21x-on-tomcat-60.html)。 / p>

然而,使用已经包含JSF的服务器更容易(例如,其他人已经遇到了组装这些东西的麻烦)。如果您是Tomcat的粉丝,TomEE可能只适合您。这是Tomcat和其他JSF已经添加的。它几乎不比Tomcat大,实际上可以作为一个完整的堆栈解决方案开箱即用。

答案 2 :(得分:0)

如果你想拥有一体化,JSF 2.x,JSP 2.x以及许多其他用于java web开发的东西,你可以使用JBOSS应用服务器,它提供了所有这些东西,而你却没有不用担心。

查看最新版本的JBOSS(8),名为The WildFly:

http://wildfly.org/downloads/