[
https://issues.apache.org/jira/browse/TOMEE-2004?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Jonathan S Fisher updated TOMEE-2004:
-------------------------------------
Description:
Given this message listener:
{code}
@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName = "destination", propertyValue =
"org.apache.tomee.test"),
@ActivationConfigProperty(propertyName = "maxSessions", propertyValue =
"1"), })
public class TestMessageListener implements MessageListener {
public static final List<String> strings = Collections
.synchronizedList(new LinkedList<>());
@Override
public void onMessage(Message message) {
try {
String payload = message.getBody(String.class);
System.out.println(payload);
strings.add(payload);
} catch (JMSException e) {
throw new RuntimeException(e);
}
}
}
{code}
And this test:
{code}
@RunWith(Arquillian.class)
public class TestMessageListenerTest {
@Deployment
public static Archive<?> createTestArchive() {
return ShrinkWrap.create(WebArchive.class)
.addPackage(TestMessageListener.class.getPackage());
}
@Test
public void testSendMessage(JMSContext jmsContext) throws Exception {
String destinationName = "org.apache.tomee.test";
Destination destination = jmsContext.createQueue(destinationName);
jmsContext.createProducer().send(destination, "test message");
Thread.sleep(1000L);
assertTrue(TestMessageListener.strings.size() > 1);
}
}
{code}
You will get this stack trace. Oddly enough this works if you deploy it to an
actual server. The workaround is to cast the {{message}} to a {{TextMessage}}
and then call {{textMessage.getText()}}
{quote}
INFO: Successfully established connection to broker [vm://jvm_broker]
Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
INFO: Removing non-required WorkContextHandler with no context:
org.apache.geronimo.connector.work.TransactionContextHandler@1e218814
Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
INFO: Removing non-required WorkContextHandler with no context:
org.apache.openejb.core.security.SecurityContextHandler@10e665a0
Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
INFO: Removing non-required WorkContextHandler with no context:
org.apache.geronimo.connector.work.HintsContextHandler@14d9e364
Jan 25, 2017 12:22:49 PM org.apache.openejb.core.transaction.EjbTransactionUtil
handleSystemException
SEVERE: EjbTransactionUtil.handleSystemException:
org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
java.lang.AbstractMethodError:
org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
at
com.tomitribe.training.jms.TestMessageListener.onMessage(TestMessageListener.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
at
org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:181)
at
org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
at
org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85)
at
org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:409)
at
org.apache.openejb.core.mdb.MdbContainer.invoke(MdbContainer.java:383)
at
org.apache.openejb.core.mdb.EndpointHandler.deliverMessage(EndpointHandler.java:228)
at
org.apache.openejb.core.mdb.EndpointHandler.invoke(EndpointHandler.java:169)
at
com.tomitribe.training.jms.TestMessageListener$$LocalBeanProxy.onMessage(com/tomitribe/training/jms/TestMessageListener.java)
at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
at
org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:1041)
at
org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:366)
at
org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
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)
java.rmi.RemoteException: The bean encountered a non-application exception;
nested exception is:
java.lang.AbstractMethodError:
org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
at
org.apache.openejb.core.transaction.EjbTransactionUtil.handleSystemException(EjbTransactionUtil.java:155)
at
org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:427)
at
org.apache.openejb.core.mdb.MdbContainer.invoke(MdbContainer.java:383)
at
org.apache.openejb.core.mdb.EndpointHandler.deliverMessage(EndpointHandler.java:228)
at
org.apache.openejb.core.mdb.EndpointHandler.invoke(EndpointHandler.java:169)
at
com.tomitribe.training.jms.TestMessageListener$$LocalBeanProxy.onMessage(com/tomitribe/training/jms/TestMessageListener.java)
at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
at
org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:1041)
at
org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:366)
at
org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
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.AbstractMethodError:
org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
at
com.tomitribe.training.jms.TestMessageListener.onMessage(TestMessageListener.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
at
org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:181)
at
org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
at
org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85)
at
org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:409)
... 13 more
{quote}
was:
Given this message listener:
{code}
@MessageDriven(activationConfig = {
@ActivationConfigProperty(propertyName = "destination", propertyValue =
"org.apache.tomee.test"),
@ActivationConfigProperty(propertyName = "maxSessions", propertyValue =
"1"), })
public class TestMessageListener implements MessageListener {
public static final List<String> strings = Collections
.synchronizedList(new LinkedList<>());
@Override
public void onMessage(Message message) {
try {
String payload = message.getBody(String.class);
System.out.println(payload);
strings.add(payload);
} catch (JMSException e) {
throw new RuntimeException(e);
}
}
}
{code}
And this test:
{code}
@RunWith(Arquillian.class)
public class TestMessageListenerTest {
@Deployment
public static Archive<?> createTestArchive() {
return ShrinkWrap.create(WebArchive.class)
.addPackage(TestMessageListener.class.getPackage());
}
@Test
public void testSendMessage(JMSContext jmsContext) throws Exception {
String destinationName = "org.apache.tomee.test";
Destination destination = jmsContext.createQueue(destinationName);
jmsContext.createProducer().send(destination, "test message");
Thread.sleep(1000L);
assertTrue(TestMessageListener.strings.size() > 1);
}
}
{code}
You will get this stack trace. Oddly enough this works if you deploy it to an
actual server:
{quote}
INFO: Successfully established connection to broker [vm://jvm_broker]
Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
INFO: Removing non-required WorkContextHandler with no context:
org.apache.geronimo.connector.work.TransactionContextHandler@1e218814
Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
INFO: Removing non-required WorkContextHandler with no context:
org.apache.openejb.core.security.SecurityContextHandler@10e665a0
Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
INFO: Removing non-required WorkContextHandler with no context:
org.apache.geronimo.connector.work.HintsContextHandler@14d9e364
Jan 25, 2017 12:22:49 PM org.apache.openejb.core.transaction.EjbTransactionUtil
handleSystemException
SEVERE: EjbTransactionUtil.handleSystemException:
org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
java.lang.AbstractMethodError:
org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
at
com.tomitribe.training.jms.TestMessageListener.onMessage(TestMessageListener.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
at
org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:181)
at
org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
at
org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85)
at
org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:409)
at
org.apache.openejb.core.mdb.MdbContainer.invoke(MdbContainer.java:383)
at
org.apache.openejb.core.mdb.EndpointHandler.deliverMessage(EndpointHandler.java:228)
at
org.apache.openejb.core.mdb.EndpointHandler.invoke(EndpointHandler.java:169)
at
com.tomitribe.training.jms.TestMessageListener$$LocalBeanProxy.onMessage(com/tomitribe/training/jms/TestMessageListener.java)
at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
at
org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:1041)
at
org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:366)
at
org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
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)
java.rmi.RemoteException: The bean encountered a non-application exception;
nested exception is:
java.lang.AbstractMethodError:
org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
at
org.apache.openejb.core.transaction.EjbTransactionUtil.handleSystemException(EjbTransactionUtil.java:155)
at
org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:427)
at
org.apache.openejb.core.mdb.MdbContainer.invoke(MdbContainer.java:383)
at
org.apache.openejb.core.mdb.EndpointHandler.deliverMessage(EndpointHandler.java:228)
at
org.apache.openejb.core.mdb.EndpointHandler.invoke(EndpointHandler.java:169)
at
com.tomitribe.training.jms.TestMessageListener$$LocalBeanProxy.onMessage(com/tomitribe/training/jms/TestMessageListener.java)
at
org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
at
org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:1041)
at
org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
at
org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:366)
at
org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
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.AbstractMethodError:
org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
at
com.tomitribe.training.jms.TestMessageListener.onMessage(TestMessageListener.java:23)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
at
org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:181)
at
org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:100)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
at
org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85)
at
org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:409)
... 13 more
{quote}
> Receive an AbstractMethodError when calling message.getBody(String.class) in
> an Arquillian test
> -----------------------------------------------------------------------------------------------
>
> Key: TOMEE-2004
> URL: https://issues.apache.org/jira/browse/TOMEE-2004
> Project: TomEE
> Issue Type: Bug
> Reporter: Jonathan S Fisher
> Priority: Minor
>
> Given this message listener:
> {code}
> @MessageDriven(activationConfig = {
> @ActivationConfigProperty(propertyName = "destination", propertyValue
> = "org.apache.tomee.test"),
> @ActivationConfigProperty(propertyName = "maxSessions", propertyValue
> = "1"), })
> public class TestMessageListener implements MessageListener {
> public static final List<String> strings = Collections
> .synchronizedList(new LinkedList<>());
> @Override
> public void onMessage(Message message) {
> try {
> String payload = message.getBody(String.class);
> System.out.println(payload);
> strings.add(payload);
> } catch (JMSException e) {
> throw new RuntimeException(e);
> }
> }
> }
> {code}
> And this test:
> {code}
> @RunWith(Arquillian.class)
> public class TestMessageListenerTest {
> @Deployment
> public static Archive<?> createTestArchive() {
> return ShrinkWrap.create(WebArchive.class)
> .addPackage(TestMessageListener.class.getPackage());
> }
> @Test
> public void testSendMessage(JMSContext jmsContext) throws Exception {
> String destinationName = "org.apache.tomee.test";
> Destination destination = jmsContext.createQueue(destinationName);
> jmsContext.createProducer().send(destination, "test message");
> Thread.sleep(1000L);
> assertTrue(TestMessageListener.strings.size() > 1);
> }
> }
> {code}
> You will get this stack trace. Oddly enough this works if you deploy it to
> an actual server. The workaround is to cast the {{message}} to a
> {{TextMessage}} and then call {{textMessage.getText()}}
> {quote}
> INFO: Successfully established connection to broker [vm://jvm_broker]
> Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
> INFO: Removing non-required WorkContextHandler with no context:
> org.apache.geronimo.connector.work.TransactionContextHandler@1e218814
> Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
> INFO: Removing non-required WorkContextHandler with no context:
> org.apache.openejb.core.security.SecurityContextHandler@10e665a0
> Jan 25, 2017 12:22:49 PM org.apache.geronimo.connector.work.WorkerContext run
> INFO: Removing non-required WorkContextHandler with no context:
> org.apache.geronimo.connector.work.HintsContextHandler@14d9e364
> Jan 25, 2017 12:22:49 PM
> org.apache.openejb.core.transaction.EjbTransactionUtil handleSystemException
> SEVERE: EjbTransactionUtil.handleSystemException:
> org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
> java.lang.AbstractMethodError:
> org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
> at
> com.tomitribe.training.jms.TestMessageListener.onMessage(TestMessageListener.java:23)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
> at
> org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:181)
> at
> org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:100)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
> at
> org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85)
> at
> org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:409)
> at
> org.apache.openejb.core.mdb.MdbContainer.invoke(MdbContainer.java:383)
> at
> org.apache.openejb.core.mdb.EndpointHandler.deliverMessage(EndpointHandler.java:228)
> at
> org.apache.openejb.core.mdb.EndpointHandler.invoke(EndpointHandler.java:169)
> at
> com.tomitribe.training.jms.TestMessageListener$$LocalBeanProxy.onMessage(com/tomitribe/training/jms/TestMessageListener.java)
> at
> org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
> at
> org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
> at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:1041)
> at
> org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
> at
> org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:366)
> at
> org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
> 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)
> java.rmi.RemoteException: The bean encountered a non-application exception;
> nested exception is:
> java.lang.AbstractMethodError:
> org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
> at
> org.apache.openejb.core.transaction.EjbTransactionUtil.handleSystemException(EjbTransactionUtil.java:155)
> at
> org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:427)
> at
> org.apache.openejb.core.mdb.MdbContainer.invoke(MdbContainer.java:383)
> at
> org.apache.openejb.core.mdb.EndpointHandler.deliverMessage(EndpointHandler.java:228)
> at
> org.apache.openejb.core.mdb.EndpointHandler.invoke(EndpointHandler.java:169)
> at
> com.tomitribe.training.jms.TestMessageListener$$LocalBeanProxy.onMessage(com/tomitribe/training/jms/TestMessageListener.java)
> at
> org.apache.activemq.ra.MessageEndpointProxy$MessageEndpointAlive.onMessage(MessageEndpointProxy.java:123)
> at
> org.apache.activemq.ra.MessageEndpointProxy.onMessage(MessageEndpointProxy.java:64)
> at org.apache.activemq.ActiveMQSession.run(ActiveMQSession.java:1041)
> at
> org.apache.activemq.ra.ServerSessionImpl.run(ServerSessionImpl.java:169)
> at
> org.apache.geronimo.connector.work.WorkerContext.run(WorkerContext.java:366)
> at
> org.apache.geronimo.connector.work.pool.NamedRunnable.run(NamedRunnable.java:32)
> 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.AbstractMethodError:
> org.apache.activemq.command.ActiveMQTextMessage.getBody(Ljava/lang/Class;)Ljava/lang/Object;
> at
> com.tomitribe.training.jms.TestMessageListener.onMessage(TestMessageListener.java:23)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
> at
> org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:181)
> at
> org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:100)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
> at
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
> at java.lang.reflect.Method.invoke(Method.java:498)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:205)
> at
> org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:186)
> at
> org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85)
> at
> org.apache.openejb.core.mdb.MdbContainer._invoke(MdbContainer.java:409)
> ... 13 more
> {quote}
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)