javax.faces.FacesException 无法找到 CDI BeanManager

Byr*_*017 4 jsf wildfly

我在用:

  • 目标运行时间
  • 野蝇14.0
  • 动态网页模块版本
  • 4.0
  • 配置
  • 动态网络模块4.0
  • 爪哇1.8
  • JavaServer Faces 2.3
  • JSF 能力
  • JSF 配置文件:/WEB-INF/faces-config.xml
  • JSF Servlet 名称:Faces Servlet JSF
  • Servlet 类名称:javax.faces.webapp.FacesServlet
  • URL 映射模式:*.jsf

我有这个错误:

21:26:14,941 严重 [javax.enterprise.resource.webcontainer.jsf.config](ServerService 线程池 -- 76)部署期间出现严重错误::com.sun.faces.config.ConfigurationException:工厂'javax.faces.lifecycle .ClientWindowFactory' 未正确配置。在 com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:357) 在 com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:243) 在 com.sun.faces.config .ConfigManager.initialize(ConfigManager.java:443) 位于 com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:237) 位于 io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:187) 处io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:216) 在 io.undertow.servlet.core.DeploymentManagerImpl$1.call(DeploymentManagerImpl.java:185) 在 io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1 .call(ServletRequestContextThreadSetupAction.java:42) 在 io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43) 在 org.wildfly.extension.undertow.security.SecurityContextThreadSetupAction.lambda$create$0(SecurityContextThreadSetupAction.java :105) 在 org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1502) 在 org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService) .java:1502) 在 org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0(UndertowDeploymentInfoService.java:1502) 在 org.wildfly.extension.undertow.deployment.UndertowDeploymentInfoService$UndertowThreadSetupAction.lambda$create$0 (UndertowDeploymentInfoService.java:1502) 在 io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:250) 在 org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:96) 在 org. wildfly.extension.undertow.deployment.UndertowDeploymentService$1.run(UndertowDeploymentService.java:78) 在 java.util.concurrent.Executors$RunnableAdapter.call(未知来源) 在 java.util.concurrent.FutureTask.run(未知来源) org.jboss.threads.ContextClassLoaderSavingRunnable.run(ContextClassLoaderSavingRunnable.java:35) 在 org.jboss.threads.EnhancedQueueExecutor.safeRun(EnhancedQueueExecutor.java:1985) 在 org.jboss.threads.EnhancedQueueExecutor$ThreadBody.doRunTask(EnhancedQueueExecutor.java: 1487) 在 org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1378) 在 java.lang.Thread.run(未知来源) 在 org.jboss.threads.JBossThread.run(JBossThread.java:485)

引起原因:javax.faces.FacesException:无法找到 CDI BeanManager

21:26:14,945错误[org.jboss.msc.service.fail](ServerService线程池--76)MSC000001:无法启动服务jboss.deployment.unit。“PruebaTresWebJEE.war”.undertow-deployment:org.jboss服务 jboss.deployment.unit."PruebaTresWebJEE.war".undertow-deployment 中的 .msc.service.StartException: java.lang.RuntimeException: java.lang.RuntimeException: com.sun.faces.config.ConfigurationException: Factory 'javax. faces.lifecycle.ClientWindowFactory' 未正确配置。

>

小智 8

这个问题在这里解决了,解决办法是在WEB-INF目录下添加一个xml文件“beans.xml”,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://xmlns.jcp.org/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
    http://xmlns.jcp.org/xml/ns/javaee/beans_2_0.xsd"
    version="2.0" bean-discovery-mode="annotated">
</beans>
Run Code Online (Sandbox Code Playgroud)