This commit is contained in:
Arjen Poutsma
2008-05-21 12:34:38 +00:00
parent 45d7e276b0
commit b07aa24e5f
3 changed files with 25 additions and 1 deletions

View File

@@ -228,7 +228,7 @@ public class JmsSenderConnection extends AbstractSenderConnection {
if (message instanceof BytesMessage || message instanceof TextMessage) {
responseMessage = message;
}
else {
else if (message != null) {
throw new IllegalArgumentException(
"Wrong message type: [" + message.getClass() + "]. Only BytesMessages can be handled.");
}

View File

@@ -135,4 +135,27 @@ public class JmsMessageSenderIntegrationTest extends AbstractDependencyInjection
}
}
public void testSendNoResponse() throws Exception {
WebServiceConnection connection = null;
try {
URI uri = new URI("jms:SenderRequestQueue?deliveryMode=NON_PERSISTENT");
connection = messageSender.createConnection(uri);
SoapMessage soapRequest = new SaajSoapMessage(messageFactory.createMessage());
soapRequest.setSoapAction(SOAP_ACTION);
connection.send(soapRequest);
BytesMessage request = (BytesMessage) jmsTemplate.receive();
assertNotNull("No message received", request);
ByteArrayOutputStream bos = new ByteArrayOutputStream();
messageFactory.createMessage().writeTo(bos);
SoapMessage response = (SoapMessage) connection.receive(new SaajSoapMessageFactory(messageFactory));
assertNull("Response received", response);
}
finally {
if (connection != null) {
connection.close();
}
}
}
}

View File

@@ -17,6 +17,7 @@
<bean id="messageSender" class="org.springframework.ws.transport.jms.JmsMessageSender">
<property name="connectionFactory" ref="connectionFactory"/>
<property name="receiveTimeout" value="500"/>
</bean>
</beans>