2013-09-19 5 views
0

У меня странная проблема при попытке объединить JMS с MDB-очередью. Дело в том, что я хочу отправить JMS в очередь, и, получив сообщение, сделайте 2 асинхронных HTTP-доступа к серверу.NoClassDefFoundError при использовании асинхронного HTTP-запроса

Мне удалось настроить очередь и отправлять/получать сообщения. Кроме того, я могу сделать один http или синхронный, но когда я пытаюсь сделать асинхронный http get, я получаю NoClassDefFoundError. Я использую Apache пример класса hc.apache.org/httpcomponents-core-ga/httpcore-nio/examples/org/apache/http/examples/nio/NHttpClient.java

И это прекрасно работает, когда используя как приложение java, но я получаю NoClassDefFOundError при попытке позвонить из MDB.

Я использую JBoss 6 и Eclipse,

13: 55: 54073 ERROR [STDERR] java.lang.NoClassDefFoundError: орг/Apache/HTTP/NiO/NHttpClientEventHandler

13: 55: 54073 ERROR [STDERR] на com.mdb.QueueListenerMDB.onMessage (QueueListenerMDB.java:59)

13: 55: 54074 ОШИБКА [STDERR] на sun.reflect.NativeMethodAccessorImpl.invoke0 (нативный метод)

13:55 : 54,074 ОШИБКА [STDERR] на sun.reflect.NativeMethodAccessorImpl.in Воке (NativeMethodAccessorImpl.java:39)

13: 55: 54074 ОШИБКА [STDERR] на sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25)

13: 55: 54074 ОШИБКА [STDERR] на java.lang.reflect.Method.invoke (Method.java:597)

13: 55: 54075 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeTarget (MethodInvocation.java:122)

13: 55: 54,075 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:111)

13: 55: 54075 ОШИБКА [STDERR] на org.jboss.ejb3.interceptors.container.ContainerMethodInvocationWrapper.invokeNext (ContainerMethodInvocationWrapper.java:72)

13: 55: 54076 ОШИБКА [STDERR] на org.jboss .ejb3.interceptors.aop.InterceptorSequencer.invoke (InterceptorSequencer.java:76)

13: 55: 54076 ОШИБКА [STDERR] на org.jboss.ejb3.interceptors.aop.InterceptorSequencer.aroundInvoke (InterceptorSequencer.java:62)

13: 55: 54077 ОШИБКА [STDERR] на sun.reflect.NativeMethodAccessorImpl.invoke0 (нативный метод)

13: 55: 54077 ОШИБКА [STDERR] на sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39)

13: 55: 54077 ОШИБКА [STDERR] на sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl. Java: 25)

13: 55: 54077 ОШИБКА [STDERR] на java.lang.reflect.Method.invoke (Method.java:597)

13: 55: 54078 ОШИБКА [STDERR] в орг. jboss.aop.advice.PerJoinpointAdvice.invoke (PerJoinpointAdvice.Java: 174)

13: 55: 54078 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54079 ОШИБКА [STDERR] на org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.fillMethod (InvocationContextInterceptor.java:74)

13: 55: 54079 ОШИБКА [STDERR] на org.jboss.aop.advice.org.jboss.ejb3.interceptors. aop.InvocationContextInterceptor_z_fillMethod_1427582905.invoke (InvocationContextInterceptor_z_fillMethod_1427582905.java)

13: 55: 54080 ОШИБКА [STDERR] на org.jboss.aop .joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54080 ОШИБКА [STDERR] на org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor.setup (InvocationContextInterceptor.java:90)

13: 55: 54080 ОШИБКА [STDERR] на org.jboss.aop.advice.org.jboss.ejb3.interceptors.aop.InvocationContextInterceptor_z_setup_1427582905.invoke (InvocationContextInterceptor_z_setup_1427582905.java)

13: 55: 54080 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 5 5: 54081 ОШИБКА [STDERR] на org.jboss.ejb3.async.impl.interceptor.AsynchronousServerInterceptor.invoke (AsynchronousServerInterceptor.java:110)

13: 55: 54081 ОШИБКА [STDERR] на org.jboss.aop. joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54081 ОШИБКА [STDERR] на org.jboss.ejb3.connectionmanager.CachedConnectionInterceptor.invoke (CachedConnectionInterceptor.java:62)

13: 55: 54 081 ОШИБКА [STDERR] в org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54,0 82 ОШИБКА [STDERR] на org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke (TransactionScopedEntityManagerInterceptor.java:56)

13: 55: 54082 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54082 ОШИБКА [STDERR] на org.jboss.ejb3.AllowedOperationsInterceptor.invoke (AllowedOperationsInterceptor.java:47)

13: 55: 54082 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54,083 ОШИБКА [STDER R], в org.jboss.ejb3.tx.NullInterceptor.invoke (NullInterceptor.java:42)

13: 55: 54083 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java : 102)

13: 55: 54084 ОШИБКА [STDERR] на org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke (StatelessInstanceInterceptor.java:68)

13: 55: 54085 ОШИБКА [STDERR] в орг .jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54,085 ОШИБКА [STDERR] на org.jboss.ejb3.core.context.InvocationContextAdapter.перейти (InvocationContextAdapter.java:70)

13: 55: 54085 ОШИБКА [STDERR] на org.jboss.ejb3.tx2.impl.CMTTxInterceptor.invokeInCallerTx (CMTTxInterceptor.java:223)

13:55: 54085 ОШИБКА [STDERR] на org.jboss.ejb3.tx2.impl.CMTTxInterceptor.required (CMTTxInterceptor.java:353)

13: 55: 54086 ОШИБКА [STDERR] на org.jboss.ejb3.tx2.impl. CMTTxInterceptor.invoke (CMTTxInterceptor.java:209)

13: 55: 54086 ОШИБКА [STDERR] на org.jboss.ejb3.tx2.aop.CMTTxInterceptorWrapper.invoke (CMTTxInterceptorWrapper.java:52)

13: 55: 54086 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54086 ОШИБКА [STDERR] на org.jboss. ejb3.tx.NullInterceptor.invoke (NullInterceptor.java:42)

13: 55: 54087 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54,087 ОШИБКА [STDERR] в org.jboss.ejb3.security.Ejb3AuthenticationInterceptorv2.invoke (Ejb3AuthenticationInterceptorv2.java:79)

13: 55: 54089 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54089 ОШИБКА [STDERR] на org.jboss.ejb3. BlockContainerShutdownInterceptor.invoke (BlockContainerShutdownInterceptor.java:67)

13: 55: 54089 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13:55: 54,090 ОШИБКА [STDERR] в org.jboss.ejb3.core.context.CurrentInvocationContextInterceptor.invoke (CurrentInvocationContextInterceptor.java:47)

13: 55: 54090 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54090 ОШИБКА [STDERR] на org.jboss.aspects. currentinvocation.CurrentInvocationInterceptor.invoke (CurrentInvocationInterceptor.java:67)

13: 55: 54091 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54,091 ОШИБКА [STDERR] в org.jboss.ejb3.interceptor.EJB3TCCLInterceptor.invoke (EJB3TCCLInterceptor.java:86)

13: 55: 54091 ОШИБКА [STDERR] на org.jboss.aop.joinpoint.MethodInvocation.invokeNext (MethodInvocation.java:102)

13: 55: 54092 ОШИБКА [STDERR] на org.jboss.ejb3.mdb .MessagingContainer.localInvoke (MessagingContainer.java:306)

13: 55: 54092 ОШИБКА [STDERR] на org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.delivery (MessageInflowLocalProxy.java:299)

13 : 55: 54,092 ОШИБКА [STDERR] на org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.invoke (MessageInflowLocalProxy.Java: 152)

13: 55: 54093 ОШИБКА [STDERR] в $ Proxy130.onMessage (неизвестный источник)

13: 55: 54093 ОШИБКА [STDERR] на org.hornetq.ra.inflow.HornetQMessageHandler. OnMessage (HornetQMessageHandler.java:256)

13: 55: 54094 ОШИБКА [STDERR] на org.hornetq.core.client.impl.ClientConsumerImpl.callOnMessage (ClientConsumerImpl.java:822)

13:55: 54,094 ОШИБКА [STDERR] на org.hornetq.core.client.impl.ClientConsumerImpl.access $ 100 (ClientConsumerImpl.java:46)

13: 55: 54095 ОШИБКА [STDERR] на org.hornetq.core.client.impl.ClientConsumerImpl $ Runner.run (ClientConsumerImpl.java:940)

13: 55: 54095 ОШИБКА [STDERR] в орг. hornetq.utils.OrderedExecutorFactory $ OrderedExecutor $ 1.run (OrderedExecutorFactory.java:100)

13: 55: 54095 ОШИБКА [STDERR] на java.util.concurrent.ThreadPoolExecutor $ Worker.runTask (ThreadPoolExecutor.java:886)

13: 55: 54096 ОШИБКА [STDERR] на java.util.concurrent.ThreadPoolExecutor $ Worker.run (ThreadPoolExecutor.java:908)

13: 55: 54098 ОШИБКА [STDERR] на java.lang.Thread.run (Thread.java:662)

13: 55: 54098 ОШИБКА [STDERR] Вызванный: java.lang.ClassNotFoundException: org.apache .http.nio.NHttpClientEventHandler из BaseClassLoader @ 72d47b5a {vfs: /// C: /Users/Guillermo/Documents/Workspace%20Eclipse/.metadata/.plugins/org.jboss.ide.eclipse.as.core/JBoss_6.0_Runtime_Server1379590260770 /deploy/FirstMDBProyect.jar}

13: 55: 54099 ОШИБКА [STDERR] на org.jboss.classloader.spi.base.BaseClassLoader.loadClass (BaseClassLoader.java:480)

13: 55: 54099 ERROR [STDERR] в java.lang.ClassLoader.loadClass (ClassLoader.java:247)

13: 55: 54,099 ОШИБКА [СТЕРДЕР] ... еще 642

Любая помощь будет оценена!

Спасибо!

+0

Пожалуйста, посмотрите на http://wso2.com/mailarchive/dev/2013-March/016528.html, который выглядит как аналогичная проблема (и не связана с JMS/MDB, а с версиями баннеров Commons Httpclient). – fvu

+0

Спасибо, но я уже видел эту страницу и, к сожалению, не разрешу мою проблему. – TheMightyWiwi

+0

Стоит попробовать :) – fvu

ответ

0

Я нашел, как: я должен был изменить LIBS сервера, чтобы включить недостающие файлы

Смежные вопросы