When you have used the WSDL wizard in the Integration Directory and have clicked on “Propose URL” in the second screen, did you ever wonder, why the URL does not point to a sender SOAP adapter channel, it is the URL of the Integration Server instead?
The reason for this is an undocumented feature of the Integration Server. You cannot send only XI messages to the Integration Server, you have the option to send standard SOAP messages as well. This picture shows the way to send SOAP messages with help of the SOAP adapter:
This picture shows the feature to send SOAP messages directly to the Integration Server. The adapter engine is not used:



thanks for this info :))
everyone likes undocumented features 🙂
btw
>>>>The SOAP inbound channel of the adapter engine does not support attachments
shouldn’t it be integration server
instead of adapter engine?
Regards,
michal
thanx for the feedback. I have corrected the blog.
Regards
Stefan
>>Additionally you must set the HTTP header parameter “SOAP action” to http://sap.com/xi/WebService/soap1.1
Am lost in this step. Where is this to be done?
Also, as we are sending the request directly to the Integration Engine, I guess we would not need a Sender SOAP adapter. Please correct me if I am wrong.
Regards,
Bhavesh
>Am lost in this step. Where is this to be done?
Your web service client has to provide the SOAP action.
>Also, as we are sending the request directly to the Integration Engine, I guess we would not need a Sender SOAP adapter.
Yes. The sender SOAP adapter is not needed in this scenario.
Can i also use operations in the sender using this feature?
I don’t understand what you mean. Can you explain your scenario?
Besides the handling of attachments, the direkt SOAP access to the Integration Builder behaves the same as the sender SOAP adapter.
If you have general questions about the handling of web services and SOAP, post them to the XI forum.
Regards
Stefan
How are you?
We met in EDP project – Portugal, remember?
Just to congratulate you for the very nice blog.
One little comment:
When you say “Only for asynchronous calls you need to change the URL inside the WSDL file with an editor and add &QualityOfService=ExactlyOnce.
” it shouldn’t be “…for synchronous calls..” instead?
Best Regards
Nuno Pereira
The default of the “Quality of Service” is “BestEffort” which implies a synchronous call.
For an asynchronous call you have to change the QoS to “ExaclyOnce”.
Regards
Stefan
i try to use this link instead of adapter and getting error “Message is incomplete. No Sender found”
Regards
Bhavesh
PS: please post questions in forum, thanks 🙂
regards
Suraj
when I try to do a test with XML Spy by using a WSDL document previously generated in Integration Directory, I receive a Response of this type:
RCVR_DETERMINATION.MESSAGE_INCOMPLETE
Why “No Sender Found”? My scenario is very simple; it have a sender channel of SOAP type and a receiver channel of JDBC Type and I have specified Receiver agreement and Determination and Interface determination and sender egreement. This is the request that XML spy generates for a SOAP Request:
Thanks!
Regards
Stefan
I am getting the same error while trying using XML Spy.
Can you pls tell me the solution you implemented for this problem.
Regards,
Supriya Sawant.
It’s really a good blog, it might solve a problem we have.
It a poosible that when we are using the XI to recieve Web Services the requests come directly to the Integration Engine (And not to the SOAP adapter), how can we verify whether the SOAP message goes directly to the Integration engine?
Here is an examlpe for SOAP url that we created:
http://milano.bezeq.com:8040/sap/xi/engine?type=entry&version=3.0&Sender.Service=BSKarat&Interface=http%3A%2F%2Fbezeq.com%2Fxi%2FMM%2FKarat%2FWebServices%5EWSTestPrincipalPropagation
Regards,
Yaki
You can also check the trace.
Regards
Stefan
thanks for coming up with such a nice blog..
I’ve tried implementing this and facing an error..can you please look at my message in XI forum RECEIVER_DETERMINATION: Message Incomplete Error
thx
praveen
praveen
Very nice blog which pictures us very dangerous feature of SAP XI. If someone knows the Integration Directory landscape and knows the user and password can run any interface on the XI machine. Also it shows that ID should be controlled and secured. What do you think about it?
Best regards,
Wojciecch
what you mention is nothing special for this special feature of the Integration Engine. You can always do harm, when you know the right user. 😉
Regards
Stefan
Stefan,<br/><br/>Hi is this blog still relevant for SAP PI7.10?<br/><br/>I have set this up as a test for a scenario I have. <br/><br/>Current Scenario NOT using your Blog and working perfectly. <br/><br/>SandBox PI Development PI<br/>–
–
<br/>File > SOAP > SOAP > ABAP Proxy<br/><br/><br/>What I am attempting now is.<br/><br/>SandBox PI Development PI<br/>—
–
<br/><br/>File > SOAP > Integration Engine > ABAP Proxy<br/><br/>I am using our SAP PI Sandbox to push a SOAP message using a Receiver SOAP adapter channel.<br/>Transport Protocol: “HTTP”<br/>Message Protocol: “SOAP”<br/>Conversion Parameters: “Do not Use SOAP Envelope”<br/><br/>Target URL: “http://<Integratio Server Host Development PI>:<Port>/sap/xi/engine?type=entry&version=3.0&Sender.Service=FigmentD&Interface=urn:figment-co-za:fleetcard:efuel_50ppm^oa_Msg50ppm&QualityOfService=ExactlyOnce&sap-user=<PIAPPLUSER>&sap-password=<PASSWORD>”<br/><br/>SOAP Action: “http://sap.com/xi/WebService/soap1.1”<br/><br/>I am however getting the following error on the SandBox Pi AE.<br/>“SOAP: call failed: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 302 MOVED TEMPORARILY”<br/><br/>Please can you assist in this matter.<br/><br/>Regards<br/>Willie Hugo<br/>
I had the port wrong, once corrected that resolved the issue I had. Somehow if you put in the ABAP port it does not seem to work. That is another issue.
Thanks for the blog very helpful.
Regards
Willie Hugo
I know we can send XI SOAP message using XI adapter but I am intrested in the above topic………
Regards,
Praveen Gujjeti.
Can we send a SOAP message from SAP XI to local Integration Engine of SAP Application System (e.g.,SAP ECC R/3) using SOAP Adapter..
I know that, we can send XI SOAP message using XI adapter, but I am interested in the above topic………
Regards,
Praveen Gujjeti.
With PI 7.11 the SOAP adapter has an XI protocol feature that you can use for that scenario.
org.xml.sax.SAXParseException: White spaces are required after keyword PUBLIC in DOCTYPE decl.
the client has the soap action set to as told in the blog . But still getting the above error . Tried everything possible . Would appreciate the response . Thanks.
Regards
Stefan
hi Stefan,
Can you please help me out with the below thread:- I need to connect the SOAP receiver to an ICO in a second PI box using SOAP with XI protocol
http://scn.sap.com/thread/3309874
Regards,
Ninu