summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Godfrey <rgodfrey@apache.org>2012-11-28 09:02:55 +0000
committerRobert Godfrey <rgodfrey@apache.org>2012-11-28 09:02:55 +0000
commit04a473dce165cd1dfee358e8d0e99098eaffa378 (patch)
tree6b54d6163a3e2e3b955634f12491dcc4e35cb3c3
parentb5c04db909053cfa6bac88736a6f09a8ab846b3d (diff)
downloadqpid-python-04a473dce165cd1dfee358e8d0e99098eaffa378.tar.gz
QPID-4453 : ObjectMessage /w no body improperly converted to an AMQP message.
merge from trunk r1412270 git-svn-id: https://svn.apache.org/repos/asf/qpid/branches/0.20@1414595 13f79535-47bb-0310-9956-ffa450edef68
-rw-r--r--qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ObjectMessageImpl.java20
1 files changed, 19 insertions, 1 deletions
diff --git a/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ObjectMessageImpl.java b/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ObjectMessageImpl.java
index 2a52b0557a..95c1497d07 100644
--- a/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ObjectMessageImpl.java
+++ b/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/ObjectMessageImpl.java
@@ -40,7 +40,25 @@ public class ObjectMessageImpl extends MessageImpl implements ObjectMessage
{
static final Symbol CONTENT_TYPE = Symbol.valueOf("application/x-java-serialized-object");
- private Data _objectData;
+ static final Data NULL_OBJECT_DATA;
+ static
+ {
+ ByteArrayOutputStream baos = new ByteArrayOutputStream();
+ try
+ {
+ ObjectOutputStream oos = new ObjectOutputStream(baos);
+ oos.writeObject(null);
+ oos.flush();
+ oos.close();
+ }
+ catch (IOException e)
+ {
+ throw new RuntimeException(e);
+ }
+ NULL_OBJECT_DATA = new Data(new Binary(baos.toByteArray()));
+ }
+
+ private Data _objectData = NULL_OBJECT_DATA;
protected ObjectMessageImpl(Header header,
MessageAnnotations messageAnnotations,