You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@tuscany.apache.org by Dong Liu <do...@yahoo.com> on 2009/06/03 20:57:46 UTC

Runtime Exception happens when using “ObjectMessage” in binding.jms

Hi, 
 
I try to deploy a service in Tuscany 1.4 to receive JMS OnjectMessage from external JMS client. I add messageProcessor="ObjectMessage" to the bind.jms. However I got the runtime exception when I send JMS ObjectMessage to the destination queuew from client. In fact the exception happens after my service is invoked.

Here is the screen output:

server started (press enter to shutdown)
Hello World @Work thread Thread[ActiveMQ Session Task,7,main]
Jun 3, 2009 2:27:30 PM 
org.apache.tuscany.sca.binding.jms.transport.TransportServiceInterceptor invoke
SEVERE: Exception invoking service 'HelloWorldService
java.lang.RuntimeException: org.apache.activemq.command.ActiveMQObjectMessage
	at org.apache.activemq.command.ActiveMQObjectMessage.storeContent(ActiveMQObjectMessage.java:104)
	at org.apache.activemq.command.ActiveMQObjectMessage.setObject(ActiveMQObjectMessage.java:155)
	at org.apache.tuscany.sca.binding.jms.provider.ObjectMessageProcessor.createJMSMessage(ObjectMessageProcessor.java:67)
	at org.apache.tuscany.sca.binding.jms.provider.AbstractMessageProcessor.insertPayloadIntoJMSMessage(AbstractMessageProcessor.java:83)
	at org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.runtime.WireFormatJMSObjectServiceInterceptor.invokeResponse(WireFormatJMSObjectServiceInterceptor.java:96)
	at org.apache.tuscany.sca.binding.jms.wireformat.jmsobject.runtime.WireFormatJMSObjectServiceInterceptor.invoke(WireFormatJMSObjectServiceInterceptor.java:69)
	at org.apache.tuscany.sca.binding.jms.operationselector.jmsdefault.runtime.OperationSelectorJMSDefaultServiceInterceptor.invoke(OperationSelectorJMSDefaultServiceInterceptor.java:78)
	at org.apache.tuscany.sca.binding.jms.transport.TransportServiceInterceptor.invoke(TransportServiceInterceptor.java:77)
	at org.apache.tuscany.sca.core.assembly.RuntimeWireImpl.invoke(RuntimeWireImpl.java:149)
	at org.apache.tuscany.sca.binding.jms.provider.RRBJMSBindingListener.invokeService(RRBJMSBindingListener.java:100)
	at org.apache.tuscany.sca.binding.jms.provider.RRBJMSBindingListener.onMessage(RRBJMSBindingListener.java:76)
	at org.apache.activemq.ActiveMQMessageConsumer.dispatch(ActiveMQMessageConsumer.java:1021)
	at org.apache.activemq.ActiveMQSessionExecutor.dispatch(ActiveMQSessionExecutor.java:122)
	at org.apache.activemq.ActiveMQSessionExecutor.iterate(ActiveMQSessionExecutor.java:192)
	at org.apache.activemq.thread.PooledTaskRunner.runTask(PooledTaskRunner.java:122)
	at org.apache.activemq.thread.PooledTaskRunner$1.run(PooledTaskRunner.java:43)
	at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
	at java.lang.Thread.run(Thread.java:595)
Caused by: java.io.NotSerializableException: org.apache.activemq.command.ActiveMQObjectMessage
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1075)
	at java.io.ObjectOutputStream.writeArray(ObjectOutputStream.java:1245)
	at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1069)
	at java.io.ObjectOutputStream.writeObject(ObjectOutputStream.java:291)
	at org.apache.activemq.command.ActiveMQObjectMessage.storeContent(ActiveMQObjectMessage.java:98)
	... 18 more


Thanks for your help

Dong