diff options
Diffstat (limited to 'java/client/src')
4 files changed, 18 insertions, 7 deletions
diff --git a/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer_0_10.java b/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer_0_10.java index dbe01a96c6..08eba25d16 100644 --- a/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer_0_10.java +++ b/java/client/src/main/java/org/apache/qpid/client/BasicMessageConsumer_0_10.java @@ -148,7 +148,10 @@ public class BasicMessageConsumer_0_10 extends BasicMessageConsumer<Struct[], By } Struct[] headers = {message.getMessageProperties(), message.getDeliveryProperties()}; // if there is a replyto destination then we need to request the exchange info - if (!message.getMessageProperties().getReplyTo().getExchangeName().equals("")) + ReplyTo replyTo = message.getMessageProperties().getReplyTo(); + if (replyTo != null && + replyTo.getExchangeName() != null && + !replyTo.getExchangeName().equals("")) { Future<ExchangeQueryResult> future = ((AMQSession_0_10) getSession()).getQpidSession() .exchangeQuery(message.getMessageProperties().getReplyTo().getExchangeName()); diff --git a/java/client/src/main/java/org/apache/qpid/client/message/AbstractJMSMessageFactory.java b/java/client/src/main/java/org/apache/qpid/client/message/AbstractJMSMessageFactory.java index 9313149442..e037c3ed3e 100644 --- a/java/client/src/main/java/org/apache/qpid/client/message/AbstractJMSMessageFactory.java +++ b/java/client/src/main/java/org/apache/qpid/client/message/AbstractJMSMessageFactory.java @@ -127,7 +127,7 @@ public abstract class AbstractJMSMessageFactory implements MessageFactory props.setContentType(mprop.getContentType()); props.setCorrelationId(mprop.getCorrelationId()); String encoding = mprop.getContentEncoding(); - if (!encoding.equals("")) + if (encoding != null && !encoding.equals("")) { props.setEncoding(encoding); } diff --git a/java/client/src/test/java/org/apache/qpid/client/MessageListenerMultiConsumerTest.java b/java/client/src/test/java/org/apache/qpid/client/MessageListenerMultiConsumerTest.java index 98c893eddd..75e50ee09b 100644 --- a/java/client/src/test/java/org/apache/qpid/client/MessageListenerMultiConsumerTest.java +++ b/java/client/src/test/java/org/apache/qpid/client/MessageListenerMultiConsumerTest.java @@ -203,12 +203,12 @@ public class MessageListenerMultiConsumerTest extends QpidTestCase for (int msg = 0; msg < (MSG_COUNT / 2); msg++) { - assertTrue(_consumer1.receive() != null); + assertTrue(_consumer1.receive(3000) != null); } for (int msg = 0; msg < (MSG_COUNT / 2); msg++) { - assertTrue(consumer2.receive() != null); + assertTrue(consumer2.receive(3000) != null); } } else @@ -218,12 +218,12 @@ public class MessageListenerMultiConsumerTest extends QpidTestCase for (int msg = 0; msg < (MSG_COUNT / 2); msg++) { - assertTrue(_consumer1.receive() != null); + assertTrue(_consumer1.receive(3000) != null); } for (int msg = 0; msg < (MSG_COUNT / 2); msg++) { - assertTrue(_consumer2.receive() != null); + assertTrue(_consumer2.receive(3000) != null); } } } diff --git a/java/client/src/test/java/org/apache/qpid/test/unit/client/channelclose/ChannelCloseOkTest.java b/java/client/src/test/java/org/apache/qpid/test/unit/client/channelclose/ChannelCloseOkTest.java index b151aea8ae..c2524c366c 100644 --- a/java/client/src/test/java/org/apache/qpid/test/unit/client/channelclose/ChannelCloseOkTest.java +++ b/java/client/src/test/java/org/apache/qpid/test/unit/client/channelclose/ChannelCloseOkTest.java @@ -199,19 +199,27 @@ public class ChannelCloseOkTest extends QpidTestCase private void waitFor(List<Message> received, int count) throws InterruptedException { + long timeout = 3000; + synchronized (received) { + long start = System.currentTimeMillis(); while (received.size() < count) { + if (System.currentTimeMillis() - start > timeout) + { + fail("timeout expired waiting for messages"); + } try { - received.wait(); + received.wait(timeout); } catch (InterruptedException e) { _log.info("Interrupted: " + e); throw e; } + } } } |
