2016-09-12 2 views
1

Als ich meinen Krieg in JBOSS EAP6.4 stelle ich unten Fehler inspite erhalten von Jackson-Mapper-asl.1.9.2.jar in meinem Classpath mit und bei der Bereitstellung StrukturNoClassDefFoundError in JBOSS EAP6.4

lesen Einstellung
<?xml version="1.0" encoding="UTF-8"?> 
<jboss-deployment-structure> 
    <deployment> 
     <dependencies> 
      <module name="deploy" /> 
      <module name="org.codehaus.jackson.jackson-mapper-asl" /> 
     </dependencies> 
    </deployment> 
</jboss-deployment-structure> 

Unten ist der Protokollstapel

 Thread-11733 2016-09-12 06:12:10,169 | WARN | session=  | user=   | org.hornetq.jms.client | HQ122001: Unhandled exception thrown from onMessage: java.lang.RuntimeException: java.lang.LinkageError: Failed to link com/sun/jersey/api/json/JSONWithPadding (Module "deploy:main" from local module loader @ed17bee (finder: local module finder @2a33fae0 (roots: /vend/hybris/jboss/jboss-eap-6.4/modules,/vend/hybris/jboss/jboss-eap-6.4/modules/system/layers/base/.overlays/BZ1281963,/vend/hybris/jboss/jboss-eap-6.4/modules/system/layers/base,/vend/hybris/OTMM16/Media-Manager/mediamanagement,/vend/hybris/OTMM16/Media-Manager/mediamanagement))) 
    at com.artesia.event.services.EventListenerManager$EventListenerWrapper.onMessage(EventListenerManager.java:101) 
    at org.hornetq.jms.client.JMSMessageListenerWrapper.onMessage(JMSMessageListenerWrapper.java:98) 
    at org.hornetq.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:1117) 
    at org.hornetq.core.client.impl.ClientConsumerImpl.access$500(ClientConsumerImpl.java:57) 
    at org.hornetq.core.client.impl.ClientConsumerImpl$Runner.run(ClientConsumerImpl.java:1252) 
    at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:105) 
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 
    at java.lang.Thread.run(Thread.java:745) 
Caused by: java.lang.LinkageError: Failed to link com/sun/jersey/api/json/JSONWithPadding (Module "deploy:main" from local module loader @ed17bee (finder: local module finder @2a33fae0 (roots: /vend/hybris/jboss/jboss-eap-6.4/modules,/vend/hybris/jboss/jboss-eap-6.4/modules/system/layers/base/.overlays/BZ1281963,/vend/hybris/jboss/jboss-eap-6.4/modules/system/layers/base,/vend/hybris/OTMM16/Media-Manager/mediamanagement,/vend/hybris/OTMM16/Media-Manager/mediamanagement))) 
    at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:487) 
    at org.jboss.modules.ModuleClassLoader.loadClassLocal(ModuleClassLoader.java:277) 
    at org.jboss.modules.ModuleClassLoader$1.loadClassLocal(ModuleClassLoader.java:92) 
    at org.jboss.modules.Module.loadModuleClass(Module.java:568) 
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:205) 
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) 
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) 
    at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) 
    at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) 
    at java.lang.Class.getDeclaredMethods0(Native Method) 
    at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) 
    at java.lang.Class.getDeclaredMethods(Class.java:1975) 
    at com.sun.jersey.core.reflection.MethodList.getAllDeclaredMethods(MethodList.java:70) 
    at com.sun.jersey.core.reflection.MethodList.<init>(MethodList.java:64) 
    at com.sun.jersey.core.spi.component.ComponentConstructor.getPostConstructMethods(ComponentConstructor.java:132) 
    at com.sun.jersey.core.spi.component.ComponentConstructor.<init>(ComponentConstructor.java:124) 
    at com.sun.jersey.core.spi.component.ProviderFactory.__getComponentProvider(ProviderFactory.java:165) 
    at com.sun.jersey.core.spi.component.ProviderFactory.getComponentProvider(ProviderFactory.java:137) 
    at com.sun.jersey.core.spi.component.ProviderServices.getComponent(ProviderServices.java:283) 
    at com.sun.jersey.core.spi.component.ProviderServices.getServices(ProviderServices.java:163) 
    at com.sun.jersey.core.spi.factory.MessageBodyFactory.initWriters(MessageBodyFactory.java:207) 
    at com.sun.jersey.core.spi.factory.MessageBodyFactory.init(MessageBodyFactory.java:163) 
    at com.sun.jersey.api.client.Client.init(Client.java:343) 
    at com.sun.jersey.api.client.Client.access$000(Client.java:119) 
    at com.sun.jersey.api.client.Client$1.f(Client.java:192) 
    at com.sun.jersey.api.client.Client$1.f(Client.java:188) 
    at com.sun.jersey.spi.inject.Errors.processWithErrors(Errors.java:193) 
    at com.sun.jersey.api.client.Client.<init>(Client.java:188) 
    at com.sun.jersey.api.client.Client.<init>(Client.java:171) 
    at com.microsoft.windowsazure.core.pipeline.jersey.Exports$3.create(Exports.java:81) 
    at com.microsoft.windowsazure.core.pipeline.jersey.Exports$3.create(Exports.java:65) 
    at com.microsoft.windowsazure.core.DefaultBuilder.build(DefaultBuilder.java:200) 
    at com.microsoft.windowsazure.core.DefaultBuilder$1.create(DefaultBuilder.java:138) 
    at com.microsoft.windowsazure.core.DefaultBuilder.build(DefaultBuilder.java:200) 
    at com.microsoft.windowsazure.core.DefaultBuilder$1.create(DefaultBuilder.java:138) 
    at com.microsoft.windowsazure.core.DefaultBuilder.build(DefaultBuilder.java:200) 
    at com.microsoft.windowsazure.Configuration.create(Configuration.java:119) 
    at com.microsoft.windowsazure.services.media.MediaService.create(MediaService.java:47) 
    at com.example.AzureAPIProxy.getMediaService(AzureAPIProxy.java:250) 
    at com.artesia.event.services.EventListenerManager$EventListenerWrapper.onMessage(EventListenerManager.java:85) 
    ... 8 more 
Caused by: java.lang.NoClassDefFoundError: org/codehaus/jackson/map/JsonSerializableWithType 
    at java.lang.ClassLoader.defineClass1(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:760) 
    at org.jboss.modules.ModuleClassLoader.doDefineOrLoadClass(ModuleClassLoader.java:361) 
    at org.jboss.modules.ModuleClassLoader.defineClass(ModuleClassLoader.java:482) 
    ... 51 more 
Caused by: java.lang.ClassNotFoundException: org.codehaus.jackson.map.JsonSerializableWithType from [Module "deploy:main" from local module loader @ed17bee (finder: local module finder @2a33fae0 (roots: /vend/hybris/jboss/jboss-eap-6.4/modules,/vend/hybris/jboss/jboss-eap-6.4/modules/system/layers/base/.overlays/BZ1281963,/vend/hybris/jboss/jboss-eap-6.4/modules/system/layers/base,/vend/hybris/OTMM16/Media-Manager/mediamanagement,/vend/hybris/OTMM16/Media-Manager/mediamanagement))] 
    at org.jboss.modules.ModuleClassLoader.findClass(ModuleClassLoader.java:213) 
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassUnchecked(ConcurrentClassLoader.java:459) 
    at org.jboss.modules.ConcurrentClassLoader.performLoadClassChecked(ConcurrentClassLoader.java:408) 
    at org.jboss.modules.ConcurrentClassLoader.performLoadClass(ConcurrentClassLoader.java:389) 
    at org.jboss.modules.ConcurrentClassLoader.loadClass(ConcurrentClassLoader.java:134) 
    ... 55 more 

Wie dieses Problem zu beheben?

Antwort

0

I Dieses Problem wurde durch Hinzufügen von jar zu meinem Bereitstellungsmodul behoben. Wenn Sie nachsehen, ob es einen anderen Ansatz zur Behebung des Problems gibt, wurde das Problem jetzt durch Hinzufügen des JAR-Moduls zum Bereitstellungsmodul behoben.

0

Es scheint, als ob der Ordner "deploy" sich wahrscheinlich nicht in der richtigen Ordnerstruktur unter den Modulen befindet. Ich würde auch empfehlen, es nicht als einen "deploy" -Ordner zu benennen, um Verwirrungen mit der tatsächlichen Bereitstellung zu vermeiden.

Ihre Ordnerstruktur sollte so aussehen, wenn Sie wollen, dass es so funktioniert, wie Sie es referenziert haben.

vend/hybris/jboss/jboss-eap-6.4/modules/deploy/main. Unter diesem Ordner sollten Sie eine module.xml Datei und einen Verweis auf die notwendigen Gläser zusammen mit den Gläsern selbst haben.

+0

Wir haben den Ordner an einem anderen Ort erstellt und wir verweisen in unserem Projekt darauf. vor dem Hinzufügen von Code in Bezug auf Jackson Jar, lädt es Gläser zur Laufzeit und es funktioniert wie erwartet. Erst nach dem Hinzufügen von Code zu Jackson wirft er uns Fehler. – rajadilipkolli

+0

Der Deploy-Ordner wird von einer Drittanbieter-Anwendung verwendet, die wir verwenden, und wir erhalten die erforderlichen Dateien aus dieser Anwendung. – rajadilipkolli

+0

Sie haben also einen externen Ordner (außerhalb von JBoss)? – CoolBeans