Hi Team,
I have not used web services in talend much, and would very much appreciate some guidance.
The scenario is pretty simple:
(1)
After pushing data to a table, I need to call on a SOAP web service to finish the data transformation.
(2)
The SOAP message is a string constant; therefore, it will not change (see message below).
(3)
I tried using the tSOAP component to pass the message; however, the talend compiler complains at run time when I paste the below message into the tSOAP's SOAP Message field.
I am assuming you can use a tSOAP component all by itself (no inputs) to accomplish this task. Can someone prescribe a better approach? Or, can you think what I might be doing wrong?
If you are a talend freelancer, I welcome your contact. I am an ERP guy, and I frequently face challenges like this. I would appreciate having a paid resource.
Here is the URL:
http://localhost:8080/ADInterface/services/ModelADService
Here is the SOAP message:
<soapenv:Envelope xmlns:soapenv="
http://schemas.xmlsoap.org/soap/envelope/" xmlns:_0="
http://idempiere.org/ADInterface/1_0">
<soapenv:Header/>
<soapenv:Body>
<_0:createData>
<_0:ModelCRUDRequest>
<_0:ModelCRUD>
<_0:serviceType>CreateBPartner</_0:serviceType>
<_0:TableName>C_BPartner</_0:TableName>
<_0:RecordID>0</_0:RecordID>
<_0:Action>Create</_0:Action>
<!--Optional:-->
<_0
ataRow>
<!--Zero or more repetitions:-->
<_0:field column="Value">
<_0:val>ChuckWS4</_0:val>
</_0:field>
<_0:field column="Name">
<_0:val>ChuckWS4</_0:val>
</_0:field>
<_0:field column="TaxID">
<_0:val></_0:val>
</_0:field>
<_0:field column="IsVendor">
<_0:val>Y</_0:val>
</_0:field>
<_0:field column="IsCustomer">
<_0:val>Y</_0:val>
</_0:field>
<_0:field column="IsTaxExempt">
<_0:val>Y</_0:val>
</_0:field>
<_0:field column="Name2">
<_0:val>Steak4</_0:val>
</_0:field>
<_0:field column="C_BP_Group_ID">
<_0:val>105</_0:val>
</_0:field>
</_0
ataRow> </_0:ModelCRUD>
<_0:ADLoginRequest>
<_0:user>SuperUser</_0:user>
<_0
ass>System</_0
ass>
<_0:lang>192</_0:lang>
<_0:ClientID>11</_0:ClientID>
<_0:RoleID>103</_0:RoleID>
<_0
rgID>11</_0
rgID>
<_0:WarehouseID>103</_0:WarehouseID>
<_0:stage>0</_0:stage>
</_0:ADLoginRequest>
</_0:ModelCRUDRequest>
</_0:createData>
</soapenv:Body>
</soapenv:Envelope>
Thank you for your time and attention!!
Chuck Boecking
chuck@chuboe.com
ChuckBoecking.com
Can you post the error? Many of the webservice components require a JDK installed, not just a JRE. Also, try the tESBConsumer component, I have found it to be superior to the other webservice components.
Hi Jholman, I edited the original post to include the below images: Attached is the error when trying to use tSOAP. Attached are the tSOAP component details I also tried the tESBconsumer; however, it is failing when I try to read the WSDL. (see attached). This is strange because the system has no issues with the WSDL anywhere else. Any thoughts? All I want to do is simply call a single web service with the above text.
It's some kind of basic syntax issue, check the code tab on the bottom left of the design area to see the actual Java code generated by the template engine. It will show the line(s) where the errors are being generated. You may need to escape double quotes in your SOAP message body.
Hi cboecking,
I think it is needed to add some syntax.
When I got these error messages, I modified SOAP message like this.
"<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:_0=\"http://idempiere.org/ADInterface/1_0\">
<soapenv:Header/> ---------
----------------------------
--------------------
Regards,
May T.