Use a XML to construct SOAP Request
guireg Jul 9, 2010 9:07 AMHi everybody,
I'm currently testing JBoss ESB in my company but I encountered some problems with SOAP Client. I've seen all the samples attached with JBoss ESB but no one answered my question.
I want to take a XML File in a FTP Server => Use this XML File to construct a SOAP Request to a webService => Send the SOAP Answer to my E-mail adress
I successfully take and read the XML and send the e-mail but I don't know how to construct a SOAP Request with my XML File, I only saw Java Classes to construct it.
Here is my jboss-esb.xml
<?xml version = "1.0" encoding = "UTF-8"?> <jbossesb xmlns="http://anonsvn.labs.jboss.com/labs/jbossesb/trunk/product/etc/schemas/xml/jbossesb-1.0.1.xsd" parameterReloadSecs="5"> <providers> <ftp-provider name="FTPprovider" hostname="127.0.0.1" > <ftp-bus busid="helloFTPChannel" > <ftp-message-filter username="guireg" password="guireg" passive="false" directory="/" input-suffix=".xml" work-suffix=".esbWorking" post-delete="false" post-rename="true" post-suffix=".COMPLETE" error-delete="false" error-suffix=".HAS_ERROR" /> </ftp-bus> </ftp-provider> <schedule-provider name="cronExample"> <cron-schedule scheduleid="cron-schedule" cronExpression="* * * * * ?"/> </schedule-provider> </providers> <services> <service category="MyServiceCategory" name="WebserviceConsumer2" description="Order Processor Webservice Consumer" invmScope="GLOBAL"> <listeners> <ftp-listener name="FtpGateway" busidref="helloFTPChannel" is-gateway="true" scheduleidref="cron-schedule"/> </listeners> <actions mep="OneWay"> <!-- <action name="println1"> <property name="message" value="Message before action XXX" /> </action--> <action name="soapui-client-action"> <property name="wsdl" value="http://JbossServer:8080/webservice?wsdl"/> <property name="SOAPAction" value="crud"/> <property name="responseAsOgnlMap" value="true" /> </action> <action name="response-mapper"> <property name="unwrap" value="true" /> <property name="host" value="mailServer" /> <property name="port" value="25" /> <property name="username" value="guireg" /> <property name="password" value="guireg" /> <property name="from" value="sv3@blabla.fr" /> <property name="sendTo" value="sv3@blabla.fr" /> <property name="subject" value="XML" /> </action> </actions> </service> </services> </jbossesb>
My Eclipse Console say that :
15:04:03,093 WARN [ActionProcessingPipeline] No fault address defined for fault message! To: InVMEpr [ PortReference < <wsa:Address invm://4d795365727669636543617465676f727924242424242424242424242457656273657276696365436f6e73756d657232/false?false#10000/>, <wsa:ReferenceProperties jbossesb:passByValue : false/>, <wsa:ReferenceProperties jbossesb:type : urn:jboss/esb/epr/type/invm/> > ] MessageID: 6d0a6609-e21b-434d-ad4f-3b9a8053da88
But I can SystemoutPrintLn my XML without problem. It gives me this error when it read the SOAP Client part of my JBossEsb.xml file
Do you have any idea ?
Thanks a lot !
Guireg