2017-09-05 2 views
1

私は、Tomcat 8とJSF 2.3を使用して実行するようにセットアップするために私のアプリをしようとしているが、私はこのエラーを取得しています:NPE Con​​figureListener Tomcatの8 + JSF 2.3

RAVE: Critical error during deployment: 
java.lang.NullPointerException 
    at java.util.Objects.requireNonNull(Objects.java:203) 
    at javax.el.CompositeELResolver.add(CompositeELResolver.java:47) 
    at com.sun.faces.el.DemuxCompositeELResolver.addRootELResolver(DemuxCompositeELResolver.java:142) 
    at com.sun.faces.el.ELUtils.addEL3_0_Resolvers(ELUtils.java:336) 
    at com.sun.faces.el.ELUtils.buildFacesResolver(ELUtils.java:258) 
    at com.sun.faces.application.ApplicationAssociate.initializeELResolverChains(ApplicationAssociate.java:499) 
    at com.sun.faces.application.ApplicationImpl.performOneTimeELInitialization(ApplicationImpl.java:1404) 
    at com.sun.faces.application.ApplicationImpl.getELResolver(ApplicationImpl.java:526) 
    at javax.faces.application.ApplicationWrapper.getELResolver(ApplicationWrapper.java:621) 
    at javax.faces.application.ApplicationWrapper.getELResolver(ApplicationWrapper.java:621) 
    at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:256) 
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4743) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:748) 

sep 05, 2017 12:14:51 PM org.apache.catalina.core.StandardContext listenerStart 
GRAVE: Excepción enviando evento inicializado de contexto a instancia de escuchador de clase com.sun.faces.config.ConfigureListener 
java.lang.RuntimeException: java.lang.NullPointerException 
    at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:315) 
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4743) 
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207) 
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419) 
    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409) 
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:748) 
Caused by: java.lang.NullPointerException 
    at java.util.Objects.requireNonNull(Objects.java:203) 
    at javax.el.CompositeELResolver.add(CompositeELResolver.java:47) 
    at com.sun.faces.el.DemuxCompositeELResolver.addRootELResolver(DemuxCompositeELResolver.java:142) 
    at com.sun.faces.el.ELUtils.addEL3_0_Resolvers(ELUtils.java:336) 
    at com.sun.faces.el.ELUtils.buildFacesResolver(ELUtils.java:258) 
    at com.sun.faces.application.ApplicationAssociate.initializeELResolverChains(ApplicationAssociate.java:499) 
    at com.sun.faces.application.ApplicationImpl.performOneTimeELInitialization(ApplicationImpl.java:1404) 
    at com.sun.faces.application.ApplicationImpl.getELResolver(ApplicationImpl.java:526) 
    at javax.faces.application.ApplicationWrapper.getELResolver(ApplicationWrapper.java:621) 
    at javax.faces.application.ApplicationWrapper.getELResolver(ApplicationWrapper.java:621) 
    at com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:256) 
    ... 9 more

私のpom.xmlは、次のいずれかであります:私はTomcatの8.5.14、およびJava 1.8.0_131を使用してい

<?xml version="1.0" encoding="UTF-8"?> 
<Context allowCasualMultipartParsing="true"> 
    <Resource name="BeanManager" 
     auth="Container" 
     type="javax.enterprise.inject.spi.BeanManager" 
     factory="org.jboss.weld.resources.ManagerObjectFactory" /> 
</Context> 

<properties> 

    <!-- Librerias JSF --> 
    <omnifaces.version>2.6.4</omnifaces.version> 
    <prettyfaces.version>3.3.3</prettyfaces.version> 
    <primefaces.version>6.1</primefaces.version> 
    <primefaces.themes.version>1.0.10</primefaces.themes.version> 
    <primefaces-extensions.version>6.1.1</primefaces-extensions.version> 
    <javax.faces.version>2.3.2</javax.faces.version> 
    <javax.el.api.version>3.0.0</javax.el.api.version> 

    <!-- Spring --> 
    <spring.version>4.3.10.RELEASE</spring.version> 

    <!-- Servlet --> 
    <jstl.version>1.2</jstl.version> 
    <javax.servlet.api.version>4.0.0</javax.servlet.api.version>   

    <!-- CDI --> 
    <weld.servlet.shaded.version>3.0.0.Final</weld.servlet.shaded.version> 
    <cdi.api.version>2.0</cdi.api.version> 

    <!-- Hibernate --> 
    <hibernate.show_sql>true</hibernate.show_sql> 
    <hibernate.generate_ddl>true</hibernate.generate_ddl> 
</properties> 

<dependencies> 

    <!-- JSF dependencies --> 
    <dependency> 
     <groupId>org.glassfish</groupId> 
     <artifactId>javax.faces</artifactId> 
     <version>${javax.faces.version}</version> 
    </dependency> 

    <!-- JSF 2 y expresiones EL RI --> 
    <dependency> 
     <groupId>javax.el</groupId> 
     <artifactId>javax.el-api</artifactId> 
     <version>${javax.el.api.version}</version> 
    </dependency> 

    <!-- Spring dependencies --> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-web</artifactId> 
     <version>${spring.version}</version> 
    </dependency> 

    <!-- Prettyfaces dependencies --> 
    <dependency> 
     <groupId>com.ocpsoft</groupId> 
     <artifactId>prettyfaces-jsf2</artifactId> 
     <version>${prettyfaces.version}</version> 
    </dependency> 

    <!-- Omnifaces dependencies --> 
    <dependency> 
     <groupId>org.omnifaces</groupId> 
     <artifactId>omnifaces</artifactId> 
     <version>${omnifaces.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.validation</groupId> 
     <artifactId>validation-api</artifactId> 
     <version>1.0.0.GA</version> 
    </dependency> 

    <!-- JSF Primefaces --> 
    <dependency> 
     <groupId>org.primefaces.themes</groupId> 
     <artifactId>flick</artifactId> 
     <version>${primefaces.themes.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.primefaces</groupId> 
     <artifactId>primefaces</artifactId> 
     <version>${primefaces.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.primefaces.extensions</groupId> 
     <artifactId>primefaces-extensions</artifactId> 
     <version>${primefaces-extensions.version}</version> 
    </dependency> 

    <!-- Servlet --> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>javax.servlet-api</artifactId> 
     <version>${javax.servlet.api.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.servlet</groupId> 
     <artifactId>jstl</artifactId> 
     <version>${jstl.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.jboss.weld.servlet</groupId> 
     <artifactId>weld-servlet-shaded</artifactId> 
     <version>${weld.servlet.shaded.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>javax.enterprise</groupId> 
     <artifactId>cdi-api</artifactId> 
     <version>${cdi.api.version}</version> 
     <scope>provided</scope> 
    </dependency> 
</dependencies> 

私は/WEB-INF/context.xmlの次のセットアップを持っています。

Primefaceを削除しようとしましたが、関連していてエラーが消えることはありません。

ライブラリがありませんか?おそらくバージョンが間違っていますか?

ありがとうございました。

答えて

0

Mavenの依存関係に加えて、あなたのプロジェクトにJARがありますか?私のプロジェクトではel-impl-2.2.jar(昔から残っていた)があり、明らかにそれは矛盾を引き起こしていました。

<context-param> 
    <param-name>com.sun.faces.expressionFactory</param-name> 
    <param-value>com.sun.el.ExpressionFactoryImpl</param-value> 
</context-param> 

アプリケーションがエラーなしで開始されました。

関連する問題