Skip to main content
Announcements
A fresh, new look for the Data Integration & Quality forums and navigation! Read more about what's changed.
cancel
Showing results for 
Search instead for 
Did you mean: 
Anonymous
Not applicable

tSoap : How to send SOAP UI message with Talend ?

Hello,

i have a problem with tSoapUi component, and google don't help me.

I want to develop a talend job who can send a Soap Ui Request, and read the response in a tLogRow component.

First, endpoint and Action Soap are correct ? I think endpoint is easy to found, i copy/paste with SoapUI. but "Action Soap", i don't really understand what it is. The component don't want the WSDL, it's strange too, dont understand.

 

When i run the job, the error is strange too (check), my syntax work with Soap Ui, why not in Talend?

Thanks you, and sorry for bad English.

 

Request (in screenshoot too) :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:com="http://com.mt.nif.dsis.services.dsis/">
   <soapenv:Header/>
   <soapenv:Body>
      <com:getDocsis>
         <macAddress>555</macAddress>
      </com:getDocsis>
   </soapenv:Body>
</soapenv:Envelope>

 

 

 

0683p000009LuXC.png

Labels (4)
1 Solution

Accepted Solutions
vapukov
Master II

Check the "quotes inside quotes"

 

try with:

"<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:com=\"http://com.mt.nif.dsis.services.dsis/\">
   <soapenv:Header/>
   <soapenv:Body>
      <com:getDocsis>
         <macAddress>555</macAddress>
      </com:getDocsis>
   </soapenv:Body>
</soapenv:Envelope>"

 

View solution in original post

6 Replies
vapukov
Master II

Check the "quotes inside quotes"

 

try with:

"<soapenv:Envelope xmlns:soapenv=\"http://schemas.xmlsoap.org/soap/envelope/\" xmlns:com=\"http://com.mt.nif.dsis.services.dsis/\">
   <soapenv:Header/>
   <soapenv:Body>
      <com:getDocsis>
         <macAddress>555</macAddress>
      </com:getDocsis>
   </soapenv:Body>
</soapenv:Envelope>"

 

Anonymous
Not applicable
Author

Thanks for your response, now the job can run whitout executions errors.

I am not sure about parameters, and Talend return in execution log a Soap error. So, i think my endpoint is correct, but the field "Action SOAP" not ? What can i write in "Action Soap"? Thanks

 

 

Démarrage du job CorrectionDonneesAPP_VTI a 08:10 08/06/2017.
[statistics] connecting to socket on port 3617
[statistics] connected
||<soap:Fault xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/"><faultcode>soap:Server</faultcode><faultstring>The given SOAPAction http://vip-nif-p.prod.lan:8080/nif-dsis/services/getDocsis does not match an operation.</faultstring></soap:Fault>
[statistics] disconnected
Job CorrectionDonneesAPP_VTI terminé à 08:10 08/06/2017. [Code sortie=0]

Field action soap : "http://-------------.lan:8080/nif-dsis/services/getDocsis"

Field endpoint : "http://-------------.lan:8080/nif-dsis/services/dsis"

In SoapUI :

0683p000009LubE.png

 

vapukov
Master II

as I can see You have not SOAPAction from SoapUI side

 

check there for examples - https://www.w3.org/TR/wsdl

Anonymous
Not applicable
Author

Thanks, now it work perfectly.

 

Solution is :

1) Care about quotes with \" caracters.

2) Field Action SOAP will be empty when SOAP don't have any action. We can found this information in SOAPUI, or in WSDL, exemple where we can see SoapAction = "" 

<wsdl:operation name="getDocsis">
<soap:operation soapAction="" style="document"/>
<wsdl:input name="getDocsis">
<soap:body use="literal"/>
</wsdl:input>

 

0683p000009LuBi.png

Anonymous
Not applicable
Author

Hello, I have the same issue, my request works with soap UI, but not with Talend tsoap0683p000009LsGx.png

0683p000009LsD3.png

I have this error message :  SAAJ0009: Message send failed
[FATAL]: api.e2time_0_1.e2time - tSOAP_1 java.security.PrivilegedActionException: com.sun.xml.messaging.saaj.SOAPExceptionImpl: Message send failed

Could you help me please ?

Anonymous
Not applicable
Author

Solved: the https certificate was missing from java.