I am running Orion 1.4.5 and have a problem that I can't figure out. I
have a JMS Topic which a Servlet (publisher) talks to a differnet server
(consumer).  The message is successfully sent over the channel to the
consumer. The consumer then successfully wraps the return object in an
ObjectMessage.  My debug statements tell me that it is an instance of
the object it is supposed to be.

Now, when the publisher's onMessage() is called, the following exception
is thrown:


javax.jms.MessageFormatException: Unable to deserialize object:
java.lang.ClassNotFoundException:
com.mas.ebiz.asp.billing.util.BillingResults
        at com.evermind.server.jms.da.getObject(JAX)
        at
com.mas.ebiz.asp.billing.publisher.BillingPublisher.onMessage(BillingPub
lisher.java:172)
        at com.evermind.server.jms.cr.ls(JAX)
        at com.evermind.server.jms.cs.ls(JAX)
        at com.evermind.server.jms.EvermindTopicConnection.ma(JAX)
        at com.evermind.server.jms.JMSServer.lr(JAX)
        at com.evermind.server.jms.ck.run(JAX)
        at com.evermind.util.f.run(JAX)


Well, my debug statements show me that it definitely is a BillingResults
object that I packed in the ObjectMessage.  And the BillingResults
object is definitely in my classpath -- I even created a temp
BillingResults object right before where this exception happens.

Here's a snippet of my code onMessage() that fails:

ObjectMessage m = (ObjectMessage)message;
Object messageObject = m.getObject();  //THIS IS WHERE THE EXCEPTION IS
THROWN


Here is my consumer snippet that packs the BillingResults object and
publishes back...


BillingResults results = new BillingResults("dummy"); 
ObjectMessage message = _session.createObjectMessage((Serializable)
results);
message.setObject((Serializable) results);
int delivery_mode = DeliveryMode.PERSISTENT;
_publisher.publish(message, delivery_mode, 1, 0);


Any ideas? I've wasted way too much time on this one!  :) 

Thank you. 


Reply via email to