Skip to Main Content

Java EE (Java Enterprise Edition) General Discussion

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

JMSException : Error deserializing object

843830Aug 30 2004 — edited Jun 1 2007
I am trying to put my own Serializable objects into a Topic.

I have a message driven bean listening on this and in the method onMessage, i try to cast the object received to the Serializable object sent.

I get the following error

weblogic.jms.common.JMSException: Error deserializing object
at weblogic.jms.common.ObjectMessageImpl.getObject(ObjectMessageImpl.jav
a:144)
at DbLoggerBean.doLogging(DbLoggerBean.java:71)
at LoggerBean_8hiuxq_EOImpl.doLogging(LoggerBean_8hiuxq_EOImpl.java:45)
at LoggerBean_8hiuxq_EOImpl_CBV.doLogging(Unknown Source)
at MessageListenerBean.onMessage(MessageListenerBean.java:54)
at weblogic.ejb20.internal.MDListener.execute(MDListener.java:382)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:197)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:170)
Caused by: java.lang.ClassNotFoundException: org.apache.log4j.spi.LoggingEvent
at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClass
Loader.java:198)
at java.lang.ClassLoader.loadClass(ClassLoader.java:289)
at java.lang.ClassLoader.loadClass(ClassLoader.java:235)
at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClass
Loader.java:223)
at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:302)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:219)
at weblogic.jms.common.ObjectMessageImpl$ObjectInputStream2.resolveClass
(ObjectMessageImpl.java:305)


In my client program that publishes messages to a topic, the code looks like this

class Result implements Serializable {
....
....
}


Result result = new Result();
result.setXXX();
........
logger.info( rslt);

I use the JMSAppender provided by the Log4j. So, I donot have a reference to a Topic object and neither can i invoke topic.createObjectMesage.....

In my MDB, I write like this...


if (message instanceof ObjectMessage)
{
ObjectMessage m = (ObjectMessage) message;
Result rslt = (Result) m.getObject();
/* looks like the m.getObject returns a org.apache.log4j.spi.LoggingEvent
and it has a getMessage() method ...but it returns a string ... and i get a classcastexception
*/
}


I get the Error deserializing object error at the line where i try to getObject() abd cast it to Result.

I use WebLogic 8.1.

Any help in this regard is appreciated.
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jun 29 2007
Added on Aug 30 2004
6 comments
2,220 views