Author: gertv
Date: Fri Jul 24 19:22:23 2009
New Revision: 797622
URL: http://svn.apache.org/viewvc?rev=797622&view=rev
Log:
SMXCOMP-604: UnsupportedOperation in JMS Consumer endpoint when using
robust-in-only MEP
Modified:
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/main/java/org/apache/servicemix/jms/endpoints/AbstractConsumerEndpoint.java
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/test/java/org/apache/servicemix/jms/JmsXBeanDeployerTest.java
Modified:
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/main/java/org/apache/servicemix/jms/endpoints/AbstractConsumerEndpoint.java
URL:
http://svn.apache.org/viewvc/servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/main/java/org/apache/servicemix/jms/endpoints/AbstractConsumerEndpoint.java?rev=797622&r1=797621&r2=797622&view=diff
==============================================================================
---
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/main/java/org/apache/servicemix/jms/endpoints/AbstractConsumerEndpoint.java
(original)
+++
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/main/java/org/apache/servicemix/jms/endpoints/AbstractConsumerEndpoint.java
Fri Jul 24 19:22:23 2009
@@ -362,7 +362,7 @@
throw exchange.getError();
}
// For InOnly exchanges, ignore DONE exchanges or those where
isRollbackOnError is false
- return;
+ return;
}
// Create session if needed
@@ -413,6 +413,8 @@
} else if (exchange.getStatus() == ExchangeStatus.DONE) {
msg = session.createMessage();
msg.setBooleanProperty(AbstractJmsMarshaler.DONE_JMS_PROPERTY,
true);
+ dest = getReplyDestination(exchange, null, session, context);
+ setCorrelationId(context.getMessage(), msg);
send(msg, session, dest);
} else {
throw new IllegalStateException("Unrecognized exchange status");
Modified:
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/test/java/org/apache/servicemix/jms/JmsXBeanDeployerTest.java
URL:
http://svn.apache.org/viewvc/servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/test/java/org/apache/servicemix/jms/JmsXBeanDeployerTest.java?rev=797622&r1=797621&r2=797622&view=diff
==============================================================================
---
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/test/java/org/apache/servicemix/jms/JmsXBeanDeployerTest.java
(original)
+++
servicemix/smx3/branches/servicemix-3.2/deployables/bindingcomponents/servicemix-jms/src/test/java/org/apache/servicemix/jms/JmsXBeanDeployerTest.java
Fri Jul 24 19:22:23 2009
@@ -160,9 +160,15 @@
component.getServiceUnitManager().start("xbean");
// Test wsdls
- assertNotNull(container.getRegistry().getEndpointDescriptor(
- container.getRegistry().getExternalEndpointsForService(
- new QName("http://test", "MyConsumerService"))[0]));
+ ServiceEndpoint[] endpoints =
+ container.getRegistry().getExternalEndpointsForService(new
QName("http://test", "MyConsumerService"));
+ boolean wsdl = false;
+ for (ServiceEndpoint endpoint : endpoints) {
+ if (container.getRegistry().getEndpointDescriptor(endpoint) !=
null) {
+ wsdl = true;
+ }
+ }
+ assertTrue("Expected at least one endpoint to have a WSDL endpoint
descriptor", wsdl);
// Test
InOut me = client.createInOutExchange();