我試圖更新現有的應用程序到MyFaces 2.2.7(從2.1.7)由 只需更改maven版本。當我嘗試部署應用程序時,出現了一個 StackOverflowError(如下)。
我的應用程序使用myfaces-core/impl v 2.1.7成功運行。StackoverflowError與Apache Myfaces + v2.2.0
> SEVERE: Exception sending context initialized event to listener instance of class org.apache.myfaces.webapp.StartupServletContextListener
java.lang.StackOverflowError
at org.apache.catalina.core.ApplicationContext.getAttribute(ApplicationContext.java:237)
at org.apache.catalina.core.ApplicationContextFacade.getAttribute(ApplicationContextFacade.java:377)
at org.apache.catalina.core.StandardContext$NoPluggabilityServletContext.getAttribute(StandardContext.java:6913)
at org.apache.myfaces.context.servlet.ApplicationMap.getAttribute(ApplicationMap.java:47)
at org.apache.myfaces.util.AbstractThreadSafeAttributeMap.get(AbstractThreadSafeAttributeMap.java:90)
at javax.faces.application.Application.getMyfacesApplicationInstance(Application.java:100)
at javax.faces.application.Application.setFlowHandler(Application.java:1245)
at javax.faces.application.Application.setFlowHandler(Application.java:1248)
at javax.faces.application.Application.setFlowHandler(Application.java:1248)
at javax.faces.application.Application.setFlowHandler(Application.java:1248)
at javax.faces.application.Application.setFlowHandler(Application.java:1248)
at javax.faces.application.Application.setFlowHandler(Application.java:1248)
at javax.faces.application.Application.setFlowHandler(Application.java:1248)
at javax.faces.application.Application.setFlowHandler(Application.java:1248)
at javax.fa
ces.application.Application.setFlowHandler(Application.java:1248)
........
........
SAME ERRORS TOO
........
........
at javax.faces.application.Application.setFlowHandler(Application.java:1248)
Şub 09, 2015 2:08:36 AM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
UPDATE:
的pom.xml
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.oys</groupId>
<artifactId>oys</artifactId>
<version>0.0.1-ALPHA</version>
<packaging>war</packaging>
<url>http://maven.apache.org</url>
<repositories>
<repository>
<id>prime-repo</id>
<name>PrimeFaces Maven Repository</name>
<url>http://repository.primefaces.org</url>
<layout>default</layout>
</repository>
</repositories>
<dependencies>
<!-- Required By Hibernate -->
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<!-- MySQL driver connector library -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.31</version>
</dependency>
<dependency>
<groupId>org.apache.tomcat</groupId>
<artifactId>tomcat-catalina</artifactId>
<version>7.0.57</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.eclipse.jdt.core.compiler</groupId>
<artifactId>ecj</artifactId>
<version>4.4</version>
</dependency>
<dependency>
<groupId>javassist</groupId>
<artifactId>javassist</artifactId>
<version>3.12.1.GA</version>
<scope />
</dependency>
<dependency>
<groupId>antlr</groupId>
<artifactId>antlr</artifactId>
<version>2.7.7</version>
<scope />
</dependency>
<dependency>
<groupId>aopalliance</groupId>
<artifactId>aopalliance</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.2</version>
</dependency>
<dependency>
<groupId>c3p0</groupId>
<artifactId>c3p0</artifactId>
<version>0.9.1.2</version>
</dependency>
<dependency>
<groupId>commons-collections</groupId>
<artifactId>commons-collections</artifactId>
<version>3.2.1</version>
</dependency>
<dependency>
<groupId>dom4j</groupId>
<artifactId>dom4j</artifactId>
<version>1.6</version>
</dependency>
<dependency>
<groupId>org.glassfish.web</groupId>
<artifactId>el-impl</artifactId>
<version>2.2</version>
</dependency>
<dependency>
<groupId>org.hibernate.common</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>4.0.1.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>4.1.0.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate.javax.persistence</groupId>
<artifactId>hibernate-jpa-2.0-api</artifactId>
<version>1.0.1.Final</version>
</dependency>
<dependency>
<groupId>javax.el</groupId>
<artifactId>javax.el-api</artifactId>
<version>2.2.4</version>
</dependency>
<dependency>
<groupId>org.jboss.logging</groupId>
<artifactId>jboss-logging</artifactId>
<version>3.1.0.CR2</version>
</dependency>
<dependency>
<groupId>org.jboss.spec.javax.transaction</groupId>
<artifactId>jboss-transaction-api_1.1_spec</artifactId>
<version>1.0.0.Final</version>
</dependency>
<dependency>
<groupId>org.jboss.as</groupId>
<artifactId>jboss-as-controller-client</artifactId>
<version>7.1.0.Final</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-api</artifactId>
<version>2.2.7</version>
</dependency>
<dependency>
<groupId>org.apache.myfaces.core</groupId>
<artifactId>myfaces-impl</artifactId>
<version>2.2.7</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.1.1</version>
</dependency>
<dependency>
<groupId>org.primefaces</groupId>
<artifactId>primefaces</artifactId>
<version>5.1</version>
</dependency>
<!-- Primefaces Theme Library -->
<dependency>
<groupId>org.primefaces.themes</groupId>
<artifactId>all-themes</artifactId>
<version>1.0.10</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aop</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.webflow</groupId>
<artifactId>spring-binding</artifactId>
<version>2.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context-support</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-expression</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.webflow</groupId>
<artifactId>spring-faces</artifactId>
<version>2.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-jdbc</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>3.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>3.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-taglibs</artifactId>
<version>3.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>3.2.0.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework.webflow</groupId>
<artifactId>spring-webflow</artifactId>
<version>2.3.2.RELEASE</version>
</dependency>
<dependency>
<groupId>xml-apis</groupId>
<artifactId>xml-apis</artifactId>
<version>2.0.2</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>3.2.5.RELEASE</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
</project>
/WEB-INF/lib中罐子列表
路徑 - > C:\ Tomcat的\ wtpwebapps \ OYS \ WEB-INF \ lib ..
all-themes-1.0.10.jar
antlr-2.7.7.jar
aopalliance-1.0.jar
aspectjweaver-1.7.2.jar
c3p0-0.9.1.2.jar
commons-beanutils-1.8.3.jar
commons-codec-1.3.jar
commons-collections-3.2.1.jar
commons-dbcp-1.4.jar
commons-digester-1.8.jar
commons-logging-1.1.1.jar
commons-pool-1.5.4.jar
dom4j-1.6.jar
ecj-4.4.jar
el-api-2.2.jar
el-impl-2.2.jar
geronimo-atinject_1.0_spec-1.0.jar
hibernate-commons-annotations-4.0.1.Final.jar
hibernate-core-4.1.0.Final.jar
hibernate-jpa-2.0-api-1.0.1.Final.jar
javassist-3.12.1.GA.jar
javassist-3.15.0-GA.jar
javax.el-api-2.2.4.jar
jboss-as-build-config-7.1.0.Final.jar
jboss-as-controller-client-7.1.0.Final.jar
jboss-as-protocol-7.1.0.Final.jar
jboss-dmr-1.1.1.Final.jar
jboss-logging-3.1.0.CR2.jar
jboss-marshalling-1.3.9.GA.jar
jboss-remoting-3.2.2.GA.jar
jboss-sasl-1.0.0.Final.jar
jboss-threads-2.0.0.GA.jar
jboss-transaction-api_1.1_spec-1.0.0.Final.jar
jsp-api-2.1.jar
jstl-1.2.jar
myfaces-api-2.2.7.jar
myfaces-impl-2.2.7.jar
mysql-connector-java-5.1.31.jar
primefaces-5.1.jar
servlet-api-2.5.jar
spring-aop-3.2.5.RELEASE.jar
spring-aspects-3.2.5.RELEASE.jar
spring-beans-3.2.5.RELEASE.jar
spring-binding-2.3.2.RELEASE.jar
spring-context-3.2.5.RELEASE.jar
spring-context-support-3.2.5.RELEASE.jar
spring-core-3.2.5.RELEASE.jar
spring-expression-3.2.5.RELEASE.jar
spring-faces-2.3.2.RELEASE.jar
spring-jdbc-3.2.5.RELEASE.jar
spring-js-2.3.2.RELEASE.jar
spring-js-resources-2.3.2.RELEASE.jar
spring-orm-3.2.5.RELEASE.jar
spring-security-acl-3.2.0.RELEASE.jar
spring-security-config-3.2.0.RELEASE.jar
spring-security-core-3.2.0.RELEASE.jar
spring-security-taglibs-3.2.0.RELEASE.jar
spring-security-web-3.2.0.RELEASE.jar
spring-test-3.2.5.RELEASE.jar
spring-tx-3.2.5.RELEASE.jar
spring-web-3.2.5.RELEASE.jar
spring-webflow-2.3.2.RELEASE.jar
spring-webmvc-3.2.1.RELEASE.jar
xml-apis-1.0.b2.jar
xnio-api-3.0.3.GA.jar
如何將myfaces 2.1.7更新爲2.2.7?在此先感謝..
這是類路徑污染的標誌(在運行時類路徑中複製不同版本的類)。您能否確認您沒有操作JDK和Tomcat的'/ lib'文件夾,並編輯問題以包含所有JAR文件的列表,這些文件以Maven構建的WAR的'/ WEB-INF/lib'文件夾結尾文件?這樣我們可以指出衝突的JAR。 – BalusC 2015-02-09 11:16:24
哦,我很抱歉,我已經提前更新了。請耐心等待 – erginduran 2015-02-09 11:31:37
不幸的是,由於某種原因,您拋棄了整個pom文件,而不是按照評論中所述在'/ WEB-INF/lib'文件中列出文件,所以準確的答案仍然是不可能的,但是POM的確看起來很腥。我看到幾個容器特定的庫被包含在應該由容器提供的位置。這肯定會導致類路徑污染,從而確認您所看到的症狀。 – BalusC 2015-02-09 11:50:02