我想将EL 2.2用于JSF 2应用程序
和tomcat 7一起提供EL 2.2
我对以下内容感到困惑:
1-我应该在我的pom文件中提供servlet-api,jsp-api和EL(使用maven),或者根本不在pom文件中包含它们,因为它们是由容器提供的,有什么区别?
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>3.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.el</groupId>
<artifactId>el-api</artifactId>
<version>2.2</version>
<scope>provided</scope>
</dependency>
2-他们是否需要将任何库添加到pom文件中才能使用EL 2.2?
3-如本文所述,web.xml中是否需要任何其他配置:
http://code2inspire.wordpress.com/2010/11/05/how-to-enable-el-2-2-on-tomcat-6/
请指教.
最佳答案 >一个不需要包含在pom.xml文件中,因为tomcat已经拥有它.但根据我的经验,当我尝试进行一些servlet编程时,需要在pom中包含servlet-api依赖.就像你说的那样,定义提供的范围,因为它已经在tomcat中,你不希望在构建战争时包含来自pom的servlet-api jar.我的2美分不包括依赖项,只要它正在运行,并包括何时需要,然后在pom.xml中记录它包含的原因.
>我认为您不需要声明任何其他依赖项,只要您的容器已经实现了.我假设tomcat 7确实如此,因为我也使用它,并且我不会在pom依赖中声明任何其他内容以便使用EL 2.x
>从未尝试过,因为我使用t7,但是使用核心jsf第3版书进行交叉检查,是的,那是有效的