From 09e4929f78d29253d1f1baa5c8d1bb4714b9f6b9 Mon Sep 17 00:00:00 2001 From: Robert Godfrey Date: Fri, 20 Feb 2015 20:36:14 +0000 Subject: QPID-6404 : [AMQP 1.0 JMS Client ] session.createMessage() should not attempt to create a message with no body sections git-svn-id: https://svn.apache.org/repos/asf/qpid/trunk@1661212 13f79535-47bb-0310-9956-ffa450edef68 --- .../java/org/apache/qpid/amqp_1_0/jms/impl/AmqpMessageImpl.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/AmqpMessageImpl.java b/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/AmqpMessageImpl.java index d780c67a76..9d0ebc1474 100644 --- a/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/AmqpMessageImpl.java +++ b/qpid/java/amqp-1-0-client-jms/src/main/java/org/apache/qpid/amqp_1_0/jms/impl/AmqpMessageImpl.java @@ -26,8 +26,10 @@ import java.util.List; import java.util.ListIterator; import org.apache.qpid.amqp_1_0.jms.AmqpMessage; +import org.apache.qpid.amqp_1_0.type.Binary; import org.apache.qpid.amqp_1_0.type.Section; import org.apache.qpid.amqp_1_0.type.messaging.ApplicationProperties; +import org.apache.qpid.amqp_1_0.type.messaging.Data; import org.apache.qpid.amqp_1_0.type.messaging.DeliveryAnnotations; import org.apache.qpid.amqp_1_0.type.messaging.Footer; import org.apache.qpid.amqp_1_0.type.messaging.Header; @@ -36,6 +38,8 @@ import org.apache.qpid.amqp_1_0.type.messaging.Properties; public class AmqpMessageImpl extends MessageImpl implements AmqpMessage { + private static final List
EMPTY_MESSAGE = + Collections.
singletonList(new Data(new Binary(new byte[0]))); private List
_sections; protected AmqpMessageImpl(Header header, @@ -57,7 +61,7 @@ public class AmqpMessageImpl extends MessageImpl implements AmqpMessage new DeliveryAnnotations(new HashMap()), new MessageAnnotations(new HashMap()), new Properties(), new ApplicationProperties(new HashMap()), new Footer(Collections.EMPTY_MAP), session); - _sections = new ArrayList
(); + _sections = EMPTY_MESSAGE; } public int getSectionCount() -- cgit v1.2.1