首页 文章

在WildFly 8.2.0上部署MyFaces 2.2.8

提问于
浏览
0

Environment :

JAVA EE 7

CDI

WildFly 8.2.0

MyFaces 2.2.8

Issue :

我试图使用myFaces 2.2.8作为默认的JSF实现运行WildFly 8.2.0 . 安装完成 . 有关这方面的详细信息是另一个问题:

Installing Apache MyFaces 2 on WildFly 8.2.0

在WildFly 8.2.0上部署应用程序战争时,会引发以下异常并且部署无法完成 .

引起:java.lang.ClassNotFoundException:来自本地模块加载器@ 736e9adb的[Module“com.sun.jsf-impl:myfaces-2.2.8”的org.apache.tomcat.InstanceManager

(finder:local module finder @ 6d21714c(roots:C:\ Users \ xyz \ wildfly-8.2.0.Final \ modules,C:\ Users \ xyz \ wildfly-8.2.0.Final \ modules \ system \ layers \ base ))org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213)[jboss-modules.jar:1.3.3.Final] org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) [jboss-modules.jar:1.3.3.Final]位于org.jboss.modules的org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408)[jboss-modules.jar:1.3.3.Final] . ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389)[jboss-modules.jar:1.3.3.Final] at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134)[jboss-modules.jar:1.3.3 .Final] atg.apache.myfaces.spi.impl.Tomcat7AnnotationInjectionProvider.initManager(Tomcat7AnnotationInjectionProvider.java:182)org.apache.myfaces.spi.impl.Tomcat7AnnotationInjectionProvider.postConstruct(Tomcat7AnnotationInjectionProvid er.java:85)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)[rt.jar:1.8.0_60] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)[rt.jar:1.8.0_60 ]在sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)[rt.jar:1.8.0_60] java.lang.reflect.Method.invoke(Method.java:497)[rt.jar:1.8.0_60 ] javax.faces.FactoryFinder.injectAndPostConstruct(FactoryFinder.java:415)at javax.faces.FactoryFinder.newFactoryInstance(FactoryFinder.java:519)javax.faces.FactoryFinder._getFactory(FactoryFinder.java:361)javax.faces .FactoryFinder.getFactory(FactoryFinder.java:225)位于com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:186)的com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java) :131)在com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:203)... 10更多

我在网上搜索了这个问题,并在这里发现了同样的问题http://www.hivmr.com/db/3jsapc8j3xz3js1dsasjxjpkx37379cm,但没有找到解决方案 .

The issue can be described as :

1)MyFaces使用Tomcat7AnnotationInjectionProvider进行注释处理,这需要org.apache.tomcat.InstanceManager,这是不可用的 .

2)一种解决方案是使用CDIAnnotationDelegateInjectionProvider,但是如何在MyFaces中配置它是不知道的?

3)如何在WildFly中挂钩MyFaces以便JBOSS Weld可以处理注释而不是MyFaces提供的类?

1 回答

相关问题