Bugs item #429173, was updated on 2001-05-31 15:31 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=376685&aid=429173&group_id=22866 Category: JBossMQ Group: v2.2.1 (stable) Status: Open Resolution: None Priority: 5 Submitted By: Nobody/Anonymous (nobody) Assigned to: Nobody/Anonymous (nobody) Summary: Serialisation error in JBossMQ. Initial Comment: I'm getting a serialisation error with JBossMQ (the version shipped with JBoss 2.2.1, whatever that may be), and I'm wondering if someone can help me out. Basically, whenever I send a message to a queue, I get serialisation errors. The client code (which lives inside an EJB) looks like this: ObjectMessage theMessage = getSession ().createObjectMessage(); theMessage.setObject((java.io.Serializable) message); // message is an interface, which is why it needs the cast. The object _is_ serializable. QueueRequestor theQueue = new QueueRequestor (getSession(), getQueue()); getConnection().start(); ISOMessage response = getResponse ((ObjectMessage)theQueue.request(theMessage)); return response; When I fire off a message, I get a JMSException. Nested inside that, there is a java.io.IOException, which reads thusly (full stack trace to the point of being sent): java.io.NotSerializableException: org.jbossmq.SpyConnection$1 at java.io.ObjectOutputStream.outputObject (ObjectOutputStream.java:1148) at java.io.ObjectOutputStream.writeObject (ObjectOutputStream.java:366) at java.io.ObjectOutputStream.outputClassFields (ObjectOutputStream.java:1827) at java.io.ObjectOutputStream.defaultWriteObject (ObjectOutputStream.java:480) <<<<<[ the previous four lines are repeated five more times ]>>>>> at java.io.ObjectOutputStream.outputObject (ObjectOutputStream.java:1214) at java.io.ObjectOutputStream.writeObject (ObjectOutputStream.java:366) at org.jbossmq.persistence.ObjectIntegrityLog.add (ObjectIntegrityLog.java:99) at org.jbossmq.persistence.SpyMessageLog.add (SpyMessageLog.java:89) at org.jbossmq.server.PersistenceManager.add (PersistenceManager.java:328) at org.jbossmq.server.JMSDestination.addMessage (JMSDestination.java:115) at org.jbossmq.server.JMSServer.addMessage (JMSServer.java:530) at org.jbossmq.server.JMSServer.addMessage (JMSServer.java:517) at org.jbossmq.distributed.server.DistributedJMSServerRMII mpl.addMessage(DistributedJMSServerRMIImpl.java:68) at org.jbossmq.SpyConnection.sendToServer (SpyConnection.java:387) at org.jbossmq.SpySession.sendMessage (SpySession.java:383) at org.jbossmq.SpyQueueSender.send (SpyQueueSender.java:95) at org.jbossmq.SpyQueueSender.send (SpyQueueSender.java:54) at javax.jms.QueueRequestor.request (QueueRequestor.java:75) at com.qsipayments.psng.message.JMSMessageHelper.sendMessa geAndGetResponse(JMSMessageHelper.java:62) SpyConnection$1 is, presumably, the Thread object inside of SpyConnection. The Thread is not serialisable, while SpyConnection is. So that's easy enough to understand. The question on my mind is: why? Why is the connection being sent as part of the message? So, there's a bug of some sort here. Either the thread in SpyConnection should be transient, or the connection information should not be included in the message. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=376685&aid=429173&group_id=22866 _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] http://lists.sourceforge.net/lists/listinfo/jboss-development