Sending complex object via JMS in Java

ant picture ant · Jun 22, 2010 · Viewed 19k times · Source

Is it possible to send complex messages via JMS? I can send TextMessages, Messages etc .. but when I try to send my custom object type MyObject trough send() method of MessageProducer I get compile error.

Then I tried to cast it, I get cast exception like MyObject cannot be cast to javax.jms.Message

Here is a code I tried :

MessageProducer messageProducer = session.createProducer(destination);
messageProducer.send((Message)getMyObject()); //where getMyObject method retrieves mapped myObject type

anyone got any advice? thank you

Answer

jimr picture jimr · Jun 22, 2010

As long as your object is Serializable, you can use an ObjectMessage

MessageProducer producer = session.createProducer( destination );
ObjectMessage message = session.createObjectMessage( getMyObject() );
producer.send( message );