You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@camel.apache.org by js...@apache.org on 2007/11/27 15:11:25 UTC
svn commit: r598648 - in
/activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf:
CamelInvoker.java CxfProducer.java
Author: jstrachan
Date: Tue Nov 27 06:11:24 2007
New Revision: 598648
URL: http://svn.apache.org/viewvc?rev=598648&view=rev
Log:
applied patch for http://issues.apache.org/activemq/browse/CAMEL-243
Modified:
activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CamelInvoker.java
activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
Modified: activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CamelInvoker.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CamelInvoker.java?rev=598648&r1=598647&r2=598648&view=diff
==============================================================================
--- activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CamelInvoker.java (original)
+++ activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CamelInvoker.java Tue Nov 27 06:11:24 2007
@@ -26,6 +26,7 @@
import java.util.logging.Level;
import java.util.logging.Logger;
+import org.apache.camel.ExchangePattern;
import org.apache.camel.RuntimeCamelException;
import org.apache.camel.component.cxf.invoker.InvokingContext;
import org.apache.cxf.endpoint.Client;
@@ -143,7 +144,6 @@
MethodDispatcher md = (MethodDispatcher)
exchange.get(Service.class).get(MethodDispatcher.class.getName());
Method m = md.getMethod(bop);
-
List<Object> params = null;
if (o instanceof List) {
params = CastUtils.cast((List<?>)o);
@@ -152,7 +152,13 @@
}
CxfEndpoint endpoint = (CxfEndpoint) cxfConsumer.getEndpoint();
+
CxfExchange cxfExchange = endpoint.createExchange(exchange.getInMessage());
+ if (bop.getOperationInfo().isOneWay()) {
+ cxfExchange.setPattern(ExchangePattern.InOnly);
+ } else {
+ cxfExchange.setPattern(ExchangePattern.InOut);
+ }
cxfExchange.getIn().setHeader(CxfConstants.OPERATION_NAME, m.getName());
cxfExchange.getIn().setBody(params);
Modified: activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java
URL: http://svn.apache.org/viewvc/activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java?rev=598648&r1=598647&r2=598648&view=diff
==============================================================================
--- activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java (original)
+++ activemq/camel/trunk/components/camel-cxf/src/main/java/org/apache/camel/component/cxf/CxfProducer.java Tue Nov 27 06:11:24 2007
@@ -147,6 +147,7 @@
public void process(Exchange exchange) {
CxfExchange cxfExchange = endpoint.createExchange(exchange);
process(cxfExchange);
+ exchange.copyFrom(cxfExchange);
}
public void process(CxfExchange exchange) {