2015-02-09 40 views
1

我試圖更新現有的應用程序到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?在此先感謝..

+0

這是類路徑污染的標誌(在運行時類路徑中複製不同版本的類)。您能否確認您沒有操作JDK和Tomcat的'/ lib'文件夾,並編輯問題以包含所有JAR文件的列表,這些文件以Maven構建的WAR的'/ WEB-INF/lib'文件夾結尾文件?這樣我們可以指出衝突的JAR。 – BalusC 2015-02-09 11:16:24

+0

哦,我很抱歉,我已經提前更新了。請耐心等待 – erginduran 2015-02-09 11:31:37

+0

不幸的是,由於某種原因,您拋棄了整個pom文件,而不是按照評論中所述在'/ WEB-INF/lib'文件中列出文件,所以準確的答案仍然是不可能的,但是POM的確看起來很腥。我看到幾個容器特定的庫被包含在應該由容器提供的位置。這肯定會導致類路徑污染,從而確認您所看到的症狀。 – BalusC 2015-02-09 11:50:02

回答

1

以下庫已經由servletcontainer(Tomcat)的提供本身:

el-api-2.2.jar 
el-impl-2.2.jar 
javax.el-api-2.2.4.jar 
jsp-api-2.1.jar 
servlet-api-2.5.jar 

你不應該爲他們提供沿web應用。它只會導致運行時類路徑的污染,以及來自servlet容器和webapp的多個不同版本的類之間的衝突。

相應地修復您的構建,以便這些庫不會以WAR結尾。

+0

我刪除了這些庫,但沒有更改。我可以解決這個問題嗎? – erginduran 2015-02-09 12:48:41

相關問題