Jakartafaces、mojarra4、tomcat10.1 失败,错误:无法调用 jakarta.faces.application.ResourceHandler.createViewResourc ...resourceHandler 为 null

问题描述 投票:0回答:0

我的helloworld pf war在tomcat10.1.7和jdk17部署失败,报错。我按照这些链接来配置 pom.xml。我的应用程序有一个简单的文件 index.xhtml。 如何通过 Maven 正确安装和配置 JSF 库? https://github.com/eclipse-ee4j/mojarra 如何在Tomcat上安装和使用CDI? https://eclipse-ee4j.github.io/mojarra/ 严重 [Catalina-utility-1] org.apache.myfaces.webapp.FacesInitializerImpl.initFaces 初始化 MyFaces 时出错:找不到工厂 jakarta.faces.application.ApplicationFactory 的备份。 java.lang.IllegalStateException:找不到工厂 jakarta.faces.application.ApplicationFactory 的备份。 在 jakarta.faces.FactoryFinderInstance.notNullFactory(FactoryFinderInstance.java:496) 在 jakarta.faces.FactoryFinderInstance.getFactory(FactoryFinderInstance.java:190) 在 jakarta.faces.FactoryFinder.getFactory(FactoryFinder.java:263) 在 org.apache.myfaces.context.servlet.FacesContextImplBase.getApplication(FacesContextImplBase.java:173) 在 org.apache.myfaces.context.servlet.FacesContextImplBase.getELContext(FacesContextImplBase.java:235) 在 jakarta.faces.component.UIViewRoot.setLocale(UIViewRoot.java:1525) 在 org.apache.myfaces.webapp.FacesInitializerImpl._createFacesContext(FacesInitializerImpl.java:498) 在 org.apache.myfaces.webapp.FacesInitializerImpl.initStartupFacesContext(FacesInitializerImpl.java:467) 在 org.apache.myfaces.webapp.FacesInitializerImpl.initFaces(FacesInitializerImpl.java:135) 在 org.apache.myfaces.webapp.StartupServletContextListener.contextInitialized(StartupServletContextListener.java:54) 在 org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4453) 在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4885)
严重 [Catalina-utility-1] com.sun.faces.config.ConfigureListener.contextInitialized 部署期间出现严重错误: com.sun.faces.config.ConfigurationException:配置失败!无法调用“jakarta.faces.application.ResourceHandler.createViewResource(jakarta.faces.context.FacesContext, String)”,因为“this.resourceHandler”为空 在 com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:319) 在 com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:179) 在 org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4451) 在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4885) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183) 在 org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:683) 在 org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:658) 在 org.apache.catalina.core.StandardHost.addChild(StandardHost.java:713) 在 org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:975) 在 org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1949) 在 java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:539) 在 java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264) 在 org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) 在 java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:123)
引起:java.lang.NullPointerException:无法调用“jakarta.faces.application.ResourceHandler.createViewResource(jakarta.faces.context.FacesContext, String)”因为“this.resourceHandler”为空 在 com.sun.faces.facelets.impl.DefaultResourceResolver.resolveUrl(DefaultResourceResolver.java:34) 在 com.sun.faces.facelets.impl.DefaultFaceletFactory.init(DefaultFaceletFactory.java:107) 在 com.sun.faces.application.ApplicationAssociate.createFaceletFactory(ApplicationAssociate.java:647) 在 com.sun.faces.application.ApplicationAssociate.initializeFacelets(ApplicationAssociate.java:338) 在 com.sun.faces.application.ApplicationAssociate.getCompiler(ApplicationAssociate.java:373) 在 com.sun.faces.config.processor.FaceletTaglibConfigProcessor.process(FaceletTaglibConfigProcessor.java:214) 在 com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:310)

我搜索了那些错误,但我无法弄清楚缺少什么。 pom.xml(我试图添加我的 pom.xml,但我做不到。)

    <dependencies>
    <dependency>
        <groupId>org.glassfish</groupId>
        <artifactId>jakarta.faces</artifactId>
        <version>4.0.0</version>
    </dependency>
    <dependency>
        <groupId>org.jboss.weld.servlet</groupId>
        <artifactId>weld-servlet-shaded</artifactId>
        <version>5.1.0.Final</version>
    </dependency>
    <dependency>
        <groupId>jakarta.servlet.jsp.jstl</groupId>
        <artifactId>jakarta.servlet.jsp.jstl-api</artifactId>
        <version>2.0.0</version>
    </dependency>        
    <dependency>
        <groupId>org.primefaces</groupId>
        <artifactId>primefaces</artifactId>
        <version>11.0.0</version>
        <classifier>jakarta</classifier>
    </dependency>
</dependencies>    
java tomcat jsf
© www.soinside.com 2019 - 2024. All rights reserved.