Migrating GlassFish to Tomcat throws java.lang.NoClassDefFoundError: com/sun/enterprise/InjectionException
Migrating GlassFish to Tomcat throws java.lang.NoClassDefFoundError: com/sun/enterprise/InjectionException
当我将 glassfish 服务器更改为 Apache tomcat 时出现此错误,如何修复此错误严重:部署期间出现严重错误我已经尝试过但失败了。我是 jsf 和 primefaces 的新手
严重:部署期间出现严重错误:
java.lang.NoClassDefFoundError: com/sun/enterprise/InjectionException
在 java.lang.Class.forName0(本机方法)
在 java.lang.Class.forName(Class.java:249)
在 com.sun.faces.util.Util.loadClass(Util.java:269)
在 com.sun.faces.spi.InjectionProviderFactory.getProviderFromEntry(InjectionProviderFactory.java:317)
在 com.sun.faces.spi.InjectionProviderFactory.findProviderClass(InjectionProviderFactory.java:285)
在 com.sun.faces.spi.InjectionProviderFactory.createInstance(InjectionProviderFactory.java:116)
在 com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:335)
在 com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223)
在 org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5099)
在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5615)
在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)
在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561)
在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
在 java.util.concurrent.FutureTask.运行(FutureTask.java:138)
在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
在 java.lang.Thread.run(Thread.java:662)
由以下原因引起:java.lang.ClassNotFoundException:com.sun.enterprise.InjectionException
在 org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1891)
在 org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1734)
... 18 更多
2016 年 8 月 18 日 2:55:00 下午 org.apache.catalina.core.StandardContext listenerStart
严重:向 class com.sun.faces.config.ConfigureListener 的侦听器实例发送上下文初始化事件的异常
java.lang.RuntimeException:java.lang.NoClassDefFoundError:com/sun/enterprise/InjectionException
在 com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:290)
在 org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5099)
在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5615)
在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147)
在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)
在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561)
在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
在 java.util.concurrent.FutureTask.运行(FutureTask.java:138)
在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895)
在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
在 java.lang.Thread.run(Thread.java:662)
原因:java.lang.NoClassDefFoundError:com/sun/enterprise/InjectionException
在 java.lang.Class.forName0(本机方法)
在 java.lang.Class.forName(Class.java:249)
在 com.sun.faces.util.Util.loadClass(Util.java:269)
在 com.sun.faces.spi.InjectionProviderFactory.getProviderFromEntry(InjectionProviderFactory.java:317)
在 com.sun.faces.spi.InjectionProviderFactory.findProviderClass(InjectionProviderFactory.java:285)
在 com.sun.faces.spi.InjectionProviderFactory.createInstance(InjectionProviderFactory.java:116)
在 com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:335)
在 com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223)
... 还有 10 个
由以下原因引起:java.lang.ClassNotFoundException:com.sun.enterprise.InjectionException
在 org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1891)
在 org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1734)
... 18 更多
2016 年 8 月 18 日 2:55:00 下午 org.apache.catalina.core.StandardContext 开始内部
严重:一个或多个侦听器无法启动。完整的详细信息将在相应的容器日志文件中找到
2016 年 8 月 18 日 2:55:00 下午 org.apache.catalina.core.StandardContext 开始内部
严重:上下文 [/TestJSF] 启动因先前的错误而失败
2016 年 8 月 18 日 2:55:00 下午 javax.faces.FactoryFinder$FactoryManager getFactory
严重:应用程序在启动时未正确初始化,找不到工厂:javax.faces.application.ApplicationFactory。试图寻找后援。
2016 年 8 月 18 日 2:55:00 下午 com.sun.faces.config.ConfigureListener contextDestroyed
严重:尝试拆除 Mojarra 运行time 时发生意外异常
java.lang.IllegalStateException:找不到工厂 javax.faces.application.ApplicationFactory 的备份。
在 javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:1010)
在 javax.faces.FactoryFinder.getFactory(FactoryFinder.java:342)
在 com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:141)
在 com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:328)
在 org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:5146)
在 org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5810)
在 org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:224)
在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:159)
在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571)
在 org.apache.catalinaa.core.ContainerBase$StartChild.call(ContainerBase.java:1561)
在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
在 java.util.concurrent.FutureTask.运行(FutureTask.java:138)
在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918)
在 java.lang.Thread.run(Thread.java:662)
2016 年 8 月 18 日 2:55:00 下午 org.apache.coyote.AbstractProtocol 开始
信息:启动 ProtocolHandler ["http-bio-6060"]
2016 年 8 月 18 日 2:55:00 下午 org.apache.coyote.AbstractProtocol 开始
信息:启动 ProtocolHandler ["ajp-bio-8009"]
2016 年 8 月 18 日 2:55:00 下午 org.apache.catalina.startup.Catalina 开始
信息:服务器启动时间为 8611 毫秒
请记住,Glassfish 是支持 JAVA EE 而 tomcat 不支持的应用程序服务器,apache org 的解决方案是 apache TomEE。
当我将 glassfish 服务器更改为 Apache tomcat 时出现此错误,如何修复此错误严重:部署期间出现严重错误我已经尝试过但失败了。我是 jsf 和 primefaces 的新手
严重:部署期间出现严重错误: java.lang.NoClassDefFoundError: com/sun/enterprise/InjectionException 在 java.lang.Class.forName0(本机方法) 在 java.lang.Class.forName(Class.java:249) 在 com.sun.faces.util.Util.loadClass(Util.java:269) 在 com.sun.faces.spi.InjectionProviderFactory.getProviderFromEntry(InjectionProviderFactory.java:317) 在 com.sun.faces.spi.InjectionProviderFactory.findProviderClass(InjectionProviderFactory.java:285) 在 com.sun.faces.spi.InjectionProviderFactory.createInstance(InjectionProviderFactory.java:116) 在 com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:335) 在 com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223) 在 org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5099) 在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5615) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561) 在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 在 java.util.concurrent.FutureTask.运行(FutureTask.java:138) 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 在 java.lang.Thread.run(Thread.java:662) 由以下原因引起:java.lang.ClassNotFoundException:com.sun.enterprise.InjectionException 在 org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1891) 在 org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1734) ... 18 更多 2016 年 8 月 18 日 2:55:00 下午 org.apache.catalina.core.StandardContext listenerStart 严重:向 class com.sun.faces.config.ConfigureListener 的侦听器实例发送上下文初始化事件的异常 java.lang.RuntimeException:java.lang.NoClassDefFoundError:com/sun/enterprise/InjectionException 在 com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:290) 在 org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:5099) 在 org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5615) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:147) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1561) 在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 在 java.util.concurrent.FutureTask.运行(FutureTask.java:138) 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 在 java.lang.Thread.run(Thread.java:662) 原因:java.lang.NoClassDefFoundError:com/sun/enterprise/InjectionException 在 java.lang.Class.forName0(本机方法) 在 java.lang.Class.forName(Class.java:249) 在 com.sun.faces.util.Util.loadClass(Util.java:269) 在 com.sun.faces.spi.InjectionProviderFactory.getProviderFromEntry(InjectionProviderFactory.java:317) 在 com.sun.faces.spi.InjectionProviderFactory.findProviderClass(InjectionProviderFactory.java:285) 在 com.sun.faces.spi.InjectionProviderFactory.createInstance(InjectionProviderFactory.java:116) 在 com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:335) 在 com.sun.faces.config.ConfigureListener.contextInitialized(ConfigureListener.java:223) ... 还有 10 个 由以下原因引起:java.lang.ClassNotFoundException:com.sun.enterprise.InjectionException 在 org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1891) 在 org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1734) ... 18 更多 2016 年 8 月 18 日 2:55:00 下午 org.apache.catalina.core.StandardContext 开始内部 严重:一个或多个侦听器无法启动。完整的详细信息将在相应的容器日志文件中找到 2016 年 8 月 18 日 2:55:00 下午 org.apache.catalina.core.StandardContext 开始内部 严重:上下文 [/TestJSF] 启动因先前的错误而失败 2016 年 8 月 18 日 2:55:00 下午 javax.faces.FactoryFinder$FactoryManager getFactory 严重:应用程序在启动时未正确初始化,找不到工厂:javax.faces.application.ApplicationFactory。试图寻找后援。 2016 年 8 月 18 日 2:55:00 下午 com.sun.faces.config.ConfigureListener contextDestroyed 严重:尝试拆除 Mojarra 运行time 时发生意外异常 java.lang.IllegalStateException:找不到工厂 javax.faces.application.ApplicationFactory 的备份。 在 javax.faces.FactoryFinder$FactoryManager.getFactory(FactoryFinder.java:1010) 在 javax.faces.FactoryFinder.getFactory(FactoryFinder.java:342) 在 com.sun.faces.config.InitFacesContext.getApplication(InitFacesContext.java:141) 在 com.sun.faces.config.ConfigureListener.contextDestroyed(ConfigureListener.java:328) 在 org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:5146) 在 org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5810) 在 org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:224) 在 org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:159) 在 org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1571) 在 org.apache.catalinaa.core.ContainerBase$StartChild.call(ContainerBase.java:1561) 在 java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 在 java.util.concurrent.FutureTask.运行(FutureTask.java:138) 在 java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:895) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:918) 在 java.lang.Thread.run(Thread.java:662) 2016 年 8 月 18 日 2:55:00 下午 org.apache.coyote.AbstractProtocol 开始 信息:启动 ProtocolHandler ["http-bio-6060"] 2016 年 8 月 18 日 2:55:00 下午 org.apache.coyote.AbstractProtocol 开始 信息:启动 ProtocolHandler ["ajp-bio-8009"] 2016 年 8 月 18 日 2:55:00 下午 org.apache.catalina.startup.Catalina 开始 信息:服务器启动时间为 8611 毫秒
请记住,Glassfish 是支持 JAVA EE 而 tomcat 不支持的应用程序服务器,apache org 的解决方案是 apache TomEE。