2016-01-08 32 views
0

环境:部署的MyFaces 2.2.8上WildFly 8.2.0

JAVA EE 7

CDI

WildFly 8.2.0

MyFaces的2.2.8

问题:

我想用myFaces 2.2.8作为默认的JSF实现来运行WildFly 8.2.0。 安装完成。造成这种情况的细节上的另一个SO问题:

Installing Apache MyFaces 2 on WildFly 8.2.0

当我的应用程序战争部署在WildFly 8.2.0,以下异常被抛出并部署不完整。

所致:抛出java.lang.ClassNotFoundException:org.apache.tomcat.InstanceManager从[模块 “com.sun.jsf-IMPL:MyFaces的-2.2.8”,从本地模块加载@ 736e9adb

(取景器:本地模块查找程序@ 6d21714c(根目录: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] at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408)[jbos s-modules.jar:1.3.3.Final] at org.jboss.modules.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] 在org.apache.myfaces.spi.impl.Tomcat7AnnotationInjectionProvider.initManager(Tomcat7AnnotationInjectionProvider.java:182) 在有机apache.myfaces.spi.impl.Tomcat7AnnotationInjectionProvider.postConstruct(Tomcat7AnnotationInjectionProvider.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] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccesso rImpl.java:43)[rt.jar:1.8.0_60] at java.lang.reflect.Method.invoke(Method.java:497)[rt.jar:1.8.0_60] at javax.faces.FactoryFinder。 injectAndPostConstruct(FactoryFinder.java:415) 在javax.faces.FactoryFinder.newFactoryInstance(FactoryFinder.java:519) 在javax.faces.FactoryFinder._getFactory(FactoryFinder.java:361) 在javax.faces.FactoryFinder.getFactory( FactoryFinder.java:225) at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist(FactoryConfigProcessor.java:186) at com.sun.faces.config.processor.FactoryConfigProcessor.process(FactoryConfigProcessor.java:131) at com.sun.faces.config.ConfigManager.initialize(ConfigManager.java:203) ... 10更多

我在网上搜索了这个问题,在这里找到了同样的问题http://www.hivmr.com/db/3jsapc8j3xz3js1dsasjxjpkx37379cm,但是没有找到解决办法。

1)的MyFaces使用Tomcat7AnnotationInjectionProvider对于需要org.apache.tomcat.InstanceManager这是不可用的注释处理:

问题可以如描述。

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

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

回答

相关问题