Repository: tomee Updated Branches: refs/heads/master 51c63c501 -> 5182e7262
TOMEE-1983 avoid npe from jmsconsumer when no message is retrieved Project: http://git-wip-us.apache.org/repos/asf/tomee/repo Commit: http://git-wip-us.apache.org/repos/asf/tomee/commit/5182e726 Tree: http://git-wip-us.apache.org/repos/asf/tomee/tree/5182e726 Diff: http://git-wip-us.apache.org/repos/asf/tomee/diff/5182e726 Branch: refs/heads/master Commit: 5182e72624cbbd9814db46f6af9403d602aeea60 Parents: 51c63c5 Author: rmannibucau <[email protected]> Authored: Thu Dec 8 08:30:21 2016 +0100 Committer: rmannibucau <[email protected]> Committed: Thu Dec 8 08:30:21 2016 +0100 ---------------------------------------------------------------------- .../apache/openejb/resource/activemq/jms2/JMSConsumerImpl.java | 3 +++ .../src/test/java/org/apache/openejb/activemq/JMS2AMQTest.java | 3 +++ 2 files changed, 6 insertions(+) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/tomee/blob/5182e726/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/jms2/JMSConsumerImpl.java ---------------------------------------------------------------------- diff --git a/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/jms2/JMSConsumerImpl.java b/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/jms2/JMSConsumerImpl.java index 26d0482..dc4fbcf 100644 --- a/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/jms2/JMSConsumerImpl.java +++ b/container/openejb-core/src/main/java/org/apache/openejb/resource/activemq/jms2/JMSConsumerImpl.java @@ -131,6 +131,9 @@ public class JMSConsumerImpl implements JMSConsumer { } private static Message wrap(final Message message) { + if (message == null) { + return null; + } final Message wrapped = JMS2.wrap(message); try { wrapped.setJMSDeliveryTime(System.currentTimeMillis()); http://git-wip-us.apache.org/repos/asf/tomee/blob/5182e726/container/openejb-core/src/test/java/org/apache/openejb/activemq/JMS2AMQTest.java ---------------------------------------------------------------------- diff --git a/container/openejb-core/src/test/java/org/apache/openejb/activemq/JMS2AMQTest.java b/container/openejb-core/src/test/java/org/apache/openejb/activemq/JMS2AMQTest.java index 07e339b..f89526f 100644 --- a/container/openejb-core/src/test/java/org/apache/openejb/activemq/JMS2AMQTest.java +++ b/container/openejb-core/src/test/java/org/apache/openejb/activemq/JMS2AMQTest.java @@ -134,6 +134,9 @@ public class JMS2AMQTest { try { ready.countDown(); assertEquals(text, context.createConsumer(destination3).receiveBody(String.class, TimeUnit.MINUTES.toMillis(1))); + + // ensure we dont do a NPE if there is nothing to read + assertNull(context.createConsumer(destination3).receiveBody(String.class, 100)); } catch (final Throwable t) { error.set(t); } finally {
