[jboss-svn-commits] JBL Code SVN: r34756 - in labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src: test/java/org/drools/camel/component/cxf and 1 other directories.
jboss-svn-commits at lists.jboss.org
jboss-svn-commits at lists.jboss.org
Tue Aug 17 08:44:41 EDT 2010
Author: salaboy21
Date: 2010-08-17 08:44:40 -0400 (Tue, 17 Aug 2010)
New Revision: 34756
Modified:
labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/CommandExecutorSoapImpl.java
labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/PostCxfSoap.java
labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/PreCxfSoap.java
labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/test/java/org/drools/camel/component/cxf/CxfSoapTest.java
labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/test/resources/org/drools/camel/component/CxfSoapSpring.xml
Log:
JBRULES-2664: Soap support in drools-camel
- working. adding some modifications to the PostCxfSoap Processor
Modified: labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/CommandExecutorSoapImpl.java
===================================================================
--- labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/CommandExecutorSoapImpl.java 2010-08-17 12:19:49 UTC (rev 34755)
+++ labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/CommandExecutorSoapImpl.java 2010-08-17 12:44:40 UTC (rev 34756)
@@ -14,4 +14,4 @@
throw new UnsupportedOperationException( "This should never be called, as it's handled by camel" );
}
-}
+ }
Modified: labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/PostCxfSoap.java
===================================================================
--- labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/PostCxfSoap.java 2010-08-17 12:19:49 UTC (rev 34755)
+++ labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/PostCxfSoap.java 2010-08-17 12:44:40 UTC (rev 34756)
@@ -42,8 +42,8 @@
QName payloadName = new QName("http://soap.jax.drools.org", "execute", "ns1");
SOAPBodyElement payload = body.addBodyElement(payloadName);
SOAPElement message = payload.addChildElement("responseType");
- message.addTextNode(StringUtils.toString( is ));
- exchange.getOut().setBody( message );
+ body.addTextNode(StringUtils.toString( is ));
+ exchange.getOut().setBody( soapMessage );
}
}
Modified: labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/PreCxfSoap.java
===================================================================
--- labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/PreCxfSoap.java 2010-08-17 12:19:49 UTC (rev 34755)
+++ labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/main/java/org/drools/jax/soap/PreCxfSoap.java 2010-08-17 12:44:40 UTC (rev 34756)
@@ -21,6 +21,7 @@
import javax.xml.soap.SOAPMessage;
import org.apache.camel.Exchange;
+import org.apache.camel.ExchangePattern;
import org.apache.camel.Processor;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
@@ -30,6 +31,10 @@
private static final transient Log LOG = LogFactory.getLog(PreCxfSoap.class);
public void process(Exchange exchange) throws Exception {
+ exchange.setPattern(ExchangePattern.InOut);
+
+
+
BindingOperationInfo boi = (BindingOperationInfo)exchange.getProperty(BindingOperationInfo.class.toString());
if (boi != null) {
LOG.info("boi.isUnwrapped" + boi.isUnwrapped());
@@ -40,4 +45,4 @@
exchange.getOut().setBody(soapMessage.getSOAPBody().getTextContent());
}
-}
\ No newline at end of file
+}
Modified: labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/test/java/org/drools/camel/component/cxf/CxfSoapTest.java
===================================================================
--- labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/test/java/org/drools/camel/component/cxf/CxfSoapTest.java 2010-08-17 12:19:49 UTC (rev 34755)
+++ labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/test/java/org/drools/camel/component/cxf/CxfSoapTest.java 2010-08-17 12:44:40 UTC (rev 34756)
@@ -40,12 +40,11 @@
SOAPMessage soapMessage = MessageFactory.newInstance().createMessage();
SOAPBody body = soapMessage.getSOAPPart().getEnvelope().getBody();
- QName payloadName = new QName("http://localhost:9002/soap", "execute", "ns1");
+ QName payloadName = new QName("http://soap.jax.drools.org", "execute", "ns1");
body.addBodyElement(payloadName);
- //SOAPElement message = payload.addChildElement("responseType");
-
+
String cmd = "";
cmd += "<batch-execution lookup=\"ksession1\">\n";
cmd += " <insert out-identifier=\"salaboy\" disconnected=\"true\">\n";
@@ -58,17 +57,20 @@
cmd += "</batch-execution>\n";
body.addTextNode(cmd);
- // message.addTextNode(cmd);
OutputStream out = new ByteArrayOutputStream();
soapMessage.writeTo(out);
String s = out.toString();
- System.out.println("S = "+s);
+ System.out.println("Request = "+s);
Object object = this.context.createProducerTemplate().requestBody("direct://http", soapMessage);
System.out.println(object.getClass().getCanonicalName());
- System.out.println(object);
+ out = new ByteArrayOutputStream();
+ soapMessage = (SOAPMessage) object;
+ soapMessage.writeTo(out);
+ s = out.toString();
+ System.out.println("Response = "+s);
}
}
Modified: labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/test/resources/org/drools/camel/component/CxfSoapSpring.xml
===================================================================
--- labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/test/resources/org/drools/camel/component/CxfSoapSpring.xml 2010-08-17 12:19:49 UTC (rev 34755)
+++ labs/jbossrules/branches/camel_soap_support-lucaz/drools-camel/src/test/resources/org/drools/camel/component/CxfSoapSpring.xml 2010-08-17 12:44:40 UTC (rev 34756)
@@ -48,10 +48,13 @@
</drools:script>
</drools:ksession>
- <cxf:cxfEndpoint id="soapServer"
- serviceClass="org.drools.jax.soap.CommandExecutorSoap"
- address="http://localhost:9002/soap" >
- <cxf:properties>
+
+
+ <cxf:cxfEndpoint id="soapServer" address="http://localhost:9002/soap"
+
+ serviceClass="org.drools.runtime.CommandExecutor"
+ >
+ <cxf:properties>
<entry key="dataFormat" value="MESSAGE"/>
<entry key="defaultOperationName" value="execute"/>
</cxf:properties>
More information about the jboss-svn-commits
mailing list