Окружающая среда:Развертывание MyFaces 2.2.8 на 8.2.0 WildFly
JAVA EE 7
CDI
WildFly 8.2.0
MyFaces 2.2.8
Вопрос:
Я пытаюсь запустить WildFly 8.2.0 с myFaces 2.2.8 в качестве реализации JSF по умолчанию. Установка завершена. Детали для этого на другой SO вопрос:
Installing Apache MyFaces 2 on WildFly 8.2.0
Когда моя заявка война развертывается на WildFly 8.2.0 следующее исключение и развертывание не будет завершена.
Вызванные: java.lang.ClassNotFoundException: org.apache.tomcat.InstanceManager из [Модуля "com.sun.jsf-осущ: MyFaces-2.2.8" из локального загрузчика модуля @ 736e9adb
(искатель : локальный модуль finder @ 6d21714c (корни: C: \ Users \ xyz \ wildfly-8.2.0.Final \ modules, C: \ Users \ xyz \ wildfly-8.2.0.Final \ modules \ system \ layers \ base)) ] at org.jboss.modules.ModuleClassLoader.findClass (ModuleClassLoader.java:213) [jboss-modules.jar: 1.3.3.Final] at 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] at org.apache.myfaces.spi.impl.Tomcat7AnnotationInjectionProvider.initManager (Tomcat7AnnotationInjectionProvider.java:182) at org. apache.myfaces.spi.impl.Tomcat7AnnotationInjectionProvider.postConstruct (Tomcat7AnnotationInjectionProvider.java:85) на sun.reflect.NativeMethodAccessorImpl.invoke0 (Родной метод) [rt.jar: 1.8.0_60] на 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:415) FactoryFinder.java:225) at com.sun.faces.config.processor.FactoryConfigProcessor.verifyFactoriesExist (FactoryConfigProcessor.java:186) в 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) Как подключить MyFaces в WildFly, чтобы JBOSS Weld мог обрабатывать аннотации вместо класса, поставляемого MyFaces?
Я уже последовали выше URL – Atul
Попробуйте, шаг 2 является неправильным в этой вики-странице. Он действителен до wildFly 8.0, а не 8.1 и выше! – Kukeltje