Support Questions

Find answers, ask questions, and share your expertise

How to get a SOAP data from WCF service using Apache Nifi

avatar
New Contributor

I am new to Apache NiFi. I can get a data from wcf service with SOAP UI.

Endpoint : http://localhost/BtsWcf/TaskiWcf.svc

Action: http://tempuri.org/ITaskiWcf/GetBillsForSubscriber


I wanna use it in nifi.


I search some documents but I couldn't find a solution. like https://community.hortonworks.com/questions/64646/get-soap-data-from-soap-webservice-using-apache-ni... but I couldn't..

My nifi flow is (pic-2).

(pic-2)
109376-1560772981968.png

GenerateFlowFile create a null queued.

I use replaceText for my soap request. It is in Replacement Value :

<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:tem="http://tempuri.org/" xmlns:bts="http://schemas.datacontract.org/2004/07/BtsWcf.Model">
<soapenv:Header/>
<soapenv:Body>
<tem:GetBillsForSubscriber>
<!--Optional:-->
<tem:getBillsForSubscriberReq>
<!--Optional:-->
<bts:CoBotRequestType>?</bts:CoBotRequestType>
<!--Optional:-->
<bts:Password>?</bts:Password>
<!--Optional:-->
<bts:RelatedIdentityNumber>?</bts:RelatedIdentityNumber>
<!--Optional:-->
<bts:RemoteIP>?</bts:RemoteIP>
<!--Optional:-->
<bts:Username>?</bts:Username>
</tem:getBillsForSubscriberReq>
</tem:GetBillsForSubscriber>
</soapenv:Body>
</soapenv:Envelope>


It's mock service, so request isn't important for service.


Here is my question.. How can I use invokeHttp processor. I just change the properties in InvokeHttp processor.

HTTP Method : POST

Remote URL : my endpoint.

Content-Type : text/xml; charset=utf-8


My invokeHttp processor is.

109377-1560773725090.png

109401-1560773910359.png


I start the processors. My response is my request in Retry queued.


Please let me know Where I am wrong. Thank you,


1560773669335.png1560773467879.png
1 REPLY 1

avatar
New Contributor

Hello,

 

You have to set the Host and the SOAP action as attributes.

 

Follow the steps in the links.

 

https://www.mail-archive.com/dev@nifi.apache.org/msg14218.html

 

https://stackoverflow.com/questions/49457764/nifi-how-to-use-invokehttp-processor-with-soap/49565048

 

It worked for me.