Simple Web Services Call

One Star

Simple Web Services Call

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:-->
<_0Smiley Very HappyataRow>
<!--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>
</_0Smiley Very HappyataRow> </_0:ModelCRUD>
<_0:ADLoginRequest>
<_0:user>SuperUser</_0:user>
<_0Smiley Tongueass>System</_0Smiley Tongueass>
<_0:lang>192</_0:lang>
<_0:ClientID>11</_0:ClientID>
<_0:RoleID>103</_0:RoleID>
<_0Smiley SurprisedrgID>11</_0Smiley SurprisedrgID>
<_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
Six Stars

Re: Simple Web Services Call

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.
One Star

Re: Simple Web Services Call

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.
Six Stars

Re: Simple Web Services Call

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.
One Star

Re: Simple Web Services Call

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.