Receiver Adapter - Target URL/SOAP Action
Hi,
Can I just confirm the following 2 values required on a SOAP Receiver adapter:
Target URL : Location within SOAP:Address tag of WSDL
SOAP Action: SoapAction within SOAP:Operation for relevant Web Service method within WSDL
Cheers,
PaulC.
> Target URL : Value of SOAP:Address tag from web service WSDL
right, it is attribute "soapAction"
> SOAP Action: Value of SOAP:Operation for relevant Web Service method within web service WSDL
right. attribute "location"
check this guide:
http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/40611dd6-e66e-2910-f383-e80fb44f9cd4
Similar Messages
-
SOAP Receiver adapter target url and method details
Hi Friends,
I am working on file to SOAP interface.
I know using SOAP receiver adapter , we need to have target URL and action.
Here, how client need to give target url and action as they are not aware of these things..please suggest.
Also if we are generating inbound service interface,how they have to handle this from their end.
Thanks
KishoreGet the WSDL file from ur Third party client and u can use the WSDL file as an External definition in PI and WSDL file also has WSDL URL which u can use in SOAP receiver adapter.
For INbound SOAP case-
Generate the WSDL file in XI and give that WSDL file to ur third party client which will send the data using the WSDL URL mentioned in the file.
refer below blog for understanding in detail:-
How to use SOAP adapter:
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/40611dd6-e66e-2910-f383-e80fb44f9cd4
chirag -
Soap Receiver adapter , Target URL and Soap Action
HI all,
WIll anyone tell me regarding Soap action, casue , they have given a URL which i have put in Target URL, but i am not able to understand what is SOap action what need to be put in this
Thankign you
Sridhari Sridhar,
In XI SOAP adapter we need two things:
SOAP URL: which is endpoint to the webserver.
SOAP action: describes particular method name we wanted to excute on that web applicaiton hosted on the webserver.
WSDL file has normally multiple operations(methods) , so we execute particular method by giving particular action name.
Action is not mandatory parameter i guess, this is in case , when wsdl is exposing only one method(action).
:Normally you can find SOAP Action element under element <SOAP:operation name = "XXX">
Hope this clears.
Cheers,
Div -
SOAP Receiver Adapter - Target URL
Hi,
We have a web service scenario, where the Sender is a III Party Java system and PI is the middleware and ECC as our receiver system. We have a wsdl binding generated from SOAMANAGER. We are using the WSDL Endpoint as the Target URL in our SOAP Receiver Adapter. The scenario works perfect with desired results.
Now that webdispatcher comes into place for load balancing and the BASIS team has given a different URL to use in the Target URL of the SOAP Reciver Adapter. The scenario throws the following eorr:-
Adapter Framework caught exception: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 302 Redirect
Has anyone come acrossed such issues. Looking forward for a solution.
Thanks & Best Regards.
Kris> Now that webdispatcher comes into place for load balancing and the BASIS team has given a different URL to use in the Target URL of the SOAP Reciver Adapter. The scenario throws the following eorr:-
>
> Adapter Framework caught exception: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 302 Redirect
>
> Has anyone come acrossed such issues. Looking forward for a solution.
I wonder why your basis team is not able to help you.
It seems that the web dispatcher is not set up correctly.
http://en.wikipedia.org/wiki/HTTP_302 -
SOAP Receiver Adapter Target system down
Hi All,
My scenario is SOAP Receiver adapter --- > Portal system (Target system.).
Now team is taking restart of target system. It will take around 1 hr. So my question what will happen to the messages which is received by SOAP Receiver adapter in this time frame. ?Hi Rajhans ,
All the messages during that period of time will fail with System Error ,We have to re-send these messages manually once the target system is up. In stead of selecting one by one you can set Multiple Selection On option to select the messages in RWB
.Please refer the weblog will give you some idea about the standard reports which can also be used to reprocess the messages.
http://www.sdn.sap.com/irj/scn/weblogs;jsessionid=(J2EE3414700)ID1051765250DB10924207601714756238End?blog=/pub/wlg/2728
do you have synchronous soap receiver or async?
Regards,
Srinivas -
SOAP Receiver Adapter - Dynamic URL
Has anyone tried modifying SOAP URL dynamically using UDF in the mapping?. I searched Forum and couldn't get right answer. Does it work with Adapter Specific settings and variable transport binding? Please donot post links to other posts unless it got an answer or atleast close to being answered. We are on PI7.0. Thanks
Hi,
I have similar situation. My target URL lookslike this
http://devlsales.test.com:8000/soap/services/AdapterService which is a working right now.
With Variable transport binding ( TServerLocation ), Can I change http://devlsales.test.com from above URL to
http://devlprofits.test.com and remaining text same resulting
http://devlprofits.test.com:8000/soap/services/AdapterService by using UDFs.
Thanks
ST
Thanks -
SOAP Receiver adapter error. SOAP CALL Failed
Hi ,
I am implementing scenario R/3->RFC adapter->XI->SOAP REceiver adapter->Web Service (Synchronous). I am getting the error.
SOAP: call failed
SOAP: error occured: java.net.ConnectException: Connection timed out
Message log is as below.
Any clue ?
Thanks & Regards,
Mathew
2005-10-31 18:59:58
Success
output
1130810398454
The message was successfully received by the messaging system. Profile: XI URL: http://host:Port/MessagingSystem/receive/AFW/XI
2005-10-31 18:59:58
Success
output
1130810398458
Using connection AFW. Trying to put the message into the request queue.
2005-10-31 18:59:58
Success
output
1130810398458
Message successfully put into the queue.
2005-10-31 18:59:58
Success
output
1130810398459
The message was successfully retrieved from the request queue.
2005-10-31 18:59:58
Success
output
1130810398459
The message status set to DLNG.
2005-10-31 18:59:58
Success
output
1130810398460
Delivering to channel: CC_CALCULATOR
2005-10-31 18:59:58
Success
output
1130810398564
SOAP: request message entering the adapter
2005-10-31 19:03:07
Success
output
1130810587497
SOAP: call failed
2005-10-31 19:03:07
Error
output
1130810587497
SOAP: error occured: java.net.ConnectException: Connection timed out
2005-10-31 19:03:07
Error
output
1130810587498
Exception caught by adapter framework: Connection timed outHi Mathew,
Check if the webservice is availble??? Based on the error below, it looks like the message is timing out at the Adapter Engine level waiting for the connection to make the webservice call...
Prasad -
HTTP Receiver Adapter : Dynamic URL
Hi,
I have a scenario where I wish to build a dynamic URL for the HTTP Receiver Adapter. The URL will contain a customer number which is present in the mapping.
The help seems to suggest that this is possible :
<i>If you want to use an HTTP destination or URL set by the mapping, set the URL or HTTP Destination indicator. (The indicator displayed depends on the Addressing Type you selected above). If you set the indicator, the URL or HTTP destination set dynamically is called by HTTP.
If the message header does not contain the URL or the HTTP destination, and you have set the Fail If Adapter-Specific Message Attributes Missing indicator, the XI message is set to status System Error. If you do not set the indicator, the URL or HTTP destination defined statically in the communication channel is used.</i>
However, it is not very clear where the URL needs to be set dynamically.
Does anyone know how to achieve this ?
Cheers
Colin.hello to all,
We have a unique issue with one of our customers that is limited to 100 character URL. The current url is http://mycompany.com/sap/xi/adapter_plain?namespace=urn%3Agoodyear%2Ecom%3AAIT%3AInventoryCheck&interface=AITInventoryCheck_Abs&service=HTTP_AIT_InvChk&QOS=BE&sap-client=010&sap-language=EN
Is there a way to have a URL like
http://mycompany.com/sap/xi/adapter_plain?namespace=urn%3Agoodyear%2Ecom%3AAIT%3AInventoryCheck
and then somewhere in the process add... &interface=AITInventoryCheck_Abs&service=HTTP_AIT_InvChk&QOS=BE&sap-client=010&sap-language=EN
So the data comes to an F5 through the DMZ to the SAP webdispatcher then to the SAP XI system.
Any ideas if this is possible or how you could start with a shorter URL?
Thanks,
Dede -
Hi,
to have to call a webservice with different operations, i do the following:
http://host:port/WebService/Config1?style=document&method=SetMaterial
and
http://host:port/WebService/Config1?style=document&method=SetMaterial
in two different comm.channels
but it didn't work.
Some help?
thanks,
Peter Hahi,
check whether any authentication is required....
regards,
Sundararamaprasad. -
Is SOAP Adapter Action field can contain 2 or more "SOAP Actions"
Hi All,
I have following scenario:-
Step 1. Webmethod(sent price querry with material no)->R/3(search price from tables)
step 2. R/3(sent price)->Webmethod
step 3. Webmethod(sent quantity)->R/3(document created in sap)
step 4. R/3(sent confirmation doc no/error)->Webmethod
Q1 <u>How can i implement above scenario in with one URL Webmethod????</u>
(URL:http://host:port/XISOAPAdapter/MessageServlet?channel=party:service:channel)
Q2 <b> Is it possible with one (Receiver SOAP adapter->Conversion Parameters->SOAP Action) field can contain more than 1 SOAP Action......??????</b>
<b>With more than one message interfaces (inbound synchronous) in one scenario</b>
Q3 <u>Or I have to design two scenarios with two URL's????with different message interfaces (inbound synchronous) </u>
Q4<b><u> Or I use Sender(SOAP) Reciver(Rfc Adapter) in abave case??? With more than one message interfaces (inbound synchronous) in one scenario</u></b>
Thanks & Regards
Message was edited by: Umesh RWhen your scenario consists of sync calls, you have only to define SOAP sender channels. The best approach is to create two channels to keep the reference from interface to channel unique.
For the sync response message you do not need and communication channel (and no SOAP action).
Regards
Stefan -
SOAP Action missing in Axis adapter
Hi,
I am not able to send data to a Web Service using Axis Adapter (SOAP 1.2) and getting an error of "SOAP Action is missing". Can see that SOAP action is missing in the SOAP message sent to Web Service. Communication channel is configured with SOAP Action.
Am on PI 7.10 SP6.
Any help is appreciated!!
Thanks
KiranHello,
I tink you are using receiver SOAP Communication channel... Ask your client to provide the same... because.... your message will be processed at receiver side by using SOAP Action at receiver side...
SOAP action is mandatory for SOAP Receiver communication channels...
Thnx
Subbu -
HTTPS communication using HTTP receiver adapter URL address as Address Type
Hi All,
If some one who has tried HTTPS communication using HTTP receiver adapter using URL address as Address type can you please guide me what are the steps need to be done.
Note : Address type is a parameter in HTTP adapter setup .
Regards,
ReddyHi,
Check this,
Configurations in Integration Directory
The plain HTTP adapter gives the receiver system the following specifications:
— Specifications for addressing using a URL address:
Target host, service number, and path prefix including query string:
http://<hostname:port>/<path>?<query-string>
You can identify the target host (HTTP port) of a SAP Web Application Server using
the
ICM monitor
Host and port of the HTTP proxy (optional if there is a firewall between the plain
HTTP adapter and the receiver system)
Authentication data for the receiver system.
See also: transaction Display and Maintain RFC Destinations (SM59).
— Specifications for addressing using an HTTP destination:
HTTP destination
— Parameters from the communication channel for technical routing
Content type (the entry text/XML is expected as default)
Specifies the format that the message contents (the payload) should have.
Optional header fields for the receiver-specific protocol
Attributes for the query string
1. Sender party
2. Sender service
3. Receiver Interface
4. Message ID
5. Quality of service
6. Queue ID
All attributes are selected except for the queue ID. If you do not want a value to be
transferred to the receiver, deselect it. The queue ID is only required if the quality of
service is EOIO.
Specifications for payload manipulation
XML code (default UFT-8)
Specifies the character set.
URL escaping
Presents the XML in a URL-enabled format. Special characters that could be
interpreted as control characters are replaced with escape characters (masked).
Prolog
Enhances the payload for particular servers (optional, see below).
Epilog
Enhances the payload for particular servers (optional, see below).
Enhancing the Payload
Regards
Seshagiri -
SOAP receiver adapter - payload inside the soap envelop
Hi,
We have to send a SOAP message to 3rd party from PI 7.1. Using SOAP receiver adapter - we are trying to achieve this. 3rd party software is unable to accept payload as an attachment of the main envelop - they want it enside the main envelop.
I tried with "Keep attachment" option - but PI still keping the payload as an attachment. I think this option is for handling "extra" attachment.
Is there any way we can keep the payload inside the envelop?
In run-time WB, at the moment envelop looks like
<SOAP:Envelope xmlns:SOAP="http://schemas....
<SOAP:Body>
<sap:Payload xlink:type="simple" xlink:href="cid:payload-d6518670ca1311debbd9ca347000800b...">
</SOAP:Body>
</SOAP:Envelope>
And the payload d6518670ca1311debbd9ca347000800b... ( again viewed from RWB) - contains the data.
<?xml version="1.0" encoding="UTF-8" ?>
<ns2:Order> ....
</ns2:Order>
Can we insert this payload directly inside the SOAP:Envelope body instead of a link there?
Regards,
SudhinHi!
It seems to me that this 3rd party is expecting only XML not SOAP.
If this is the case, you should use the HTTP Receiver adapter instead of SOAP.
Some systems 'say' they can speak SOAP but they can only speak XML. Not to blame, it's a mistake many make these days.
The only way you use SOAP Receiver adapter with this 3rd party, is that if someone from the 3rd party hands you a WSDL file.
Ricardo Sancio Lóra
Brazil -
Use of SOAP Receiver Adapter in a recursive way with dynamic Target URLs
Hi all,
I have a following scenario.
1. I have to call a webservice with a URL http://myserver.com/default.aspx?action=index
This will return a list of xml filenames as below
<?xml version="1.0" encoding="UTF-8"?>
<filelist>
<file uuid="test1" />
<file uuid="test2" />
<file uuid="test3" />
<file uuid="test4" />
</filelist>
2. Now I have to call the same webservice with a change in action so that the url looks like
URL - http://myserver.com/default.aspx?action=fetch&uuid=
for all the filenames in the list
So in essence, I have to create a dynamic URLs recursively like
http://myserver.com/default.aspx?action=fetch&uuid=test1
http://myserver.com/default.aspx?action=fetch&uuid=test2 and so on
3. And with each call to the URL in step 2, the incoming xml is to be mapped to an IDoc.
I will be creating a ABAP proxy to initiate the calls.
I would like some ideas so as to have a less complex approach to the solution.
Regards,
NeerajHi,
dynamic SOAP URL - adapter specific properties (http receiver adapter)
Dynamic configuration payload - https://media.sdn.sap.com/javadocs/NW04/SPS15/pi/com/sap/aii/mapping/api/DynamicConfiguration.html
DynamicConfiguration conf = (DynamicConfiguration) container.getTransformationParameters().get
(StreamTransformationConstants.DYNAMIC_CONFIGURATION);
DynamicConfigurationKey key = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/SOAP","THeaderSOAPACTION");
String a = http://something.abcd/applicationName/xmlMessage //set the value of actual action here
conf.put(key, a);
return ""; -
Issue while passing Target URL dynamically in SOAP Receiver Adapter
Experts,
I am stuck with an issue while passing the Target URL dynamically.
The UDF required for this works just fine. I can see the Target URL in Dynamic Configuration header(The Key is TServerLocation) in SXMB_MONI but the request that I am sending is not reaching the web service.
Some posts have suggested to hard code the Target URL as http://.
Below is the error that I am getting when I hard the Target URL as http://:
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:Server</faultcode>
<faultstring>Server Error</faultstring>
<detail>
<s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
<context>XIAdapter</context>
<code>RecoverableException</code>
<text>com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/HTML
at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:453)
at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:131)
at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:834)
at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)</text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
When I hard code the Target URL as Test (any dummy value), the error that I get is different. (Detailed error shown below)
<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">
<SOAP:Body>
<SOAP:Fault>
<faultcode>SOAP:Server</faultcode>
<faultstring>Server Error</faultstring>
<detail>
<s:SystemError xmlns:s="http://sap.com/xi/WebService/xi2.0">
<context>XIAdapter</context>
<code>RecoverableException</code>
<text>com.sap.aii.af.ra.ms.api.DeliveryException: XIAdapterFramework:GENERAL:com.sap.aii.af.ra.ms.api.DeliveryException: no scheme
at com.sap.aii.adapter.xi.ms.XIEventHandler.onTransmit(XIEventHandler.java:453)
at com.sap.aii.af.ra.ms.impl.core.queue.CallConsumer.onMessage(CallConsumer.java:131)
at com.sap.aii.af.ra.ms.impl.core.queue.Queue.run(Queue.java:834)
at com.sap.aii.af.ra.ms.runtime.MSWorkWrapper.run(MSWorkWrapper.java:56)
at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
at java.security.AccessController.doPrivileged(Native Method)
at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)</text>
</s:SystemError>
</detail>
</SOAP:Fault>
</SOAP:Body>
</SOAP:Envelope>
I've referred the post [Dynamic URL for SOAP receiver adapter;.
I am on PI 7.0.
Any help in this regard is highly appreciated.
Best Regards,
VijayIssue resolved... by doing this:
DynamicConfigurationKey key2 = DynamicConfigurationKey.create("http://sap.com/xi/XI/System/SOAP", "TAuthKey");
conf.put (key2, "username");
In the advanced tab of the communication channel, set the flag "View Authorization keys", and then added "username" (user to access the dynamic target url) and the password (2 times).
That's it...
Maybe you are looking for
-
I can't update to version 2014.2.2
Hello, like I've said in the title I can't update to Photoshop version 2014.2.2 currently I'm on version 2014.2.1 the Updates option in Photoshop is grayed-out, and Adobe creative cloud app only show an update for Camera RAW and after doing that upda
-
Characteristic values as hyperlinks in a web report
Hi All I have a web report with only one characteristic and some key figures. And the number of values for that characteristics are 5 and they are always fixed (structure). In my report I need to make each of that characteristic value a hyper link. I
-
UDF for Special Character Conversion
Hello All, Can any one help me with the UDF for special character conversion code. I mean if a special character is given it should pass a blankspace. << Moderator message - Everyone's problem is important >> Many thanks, Rahul. Edited by: Rob Burban
-
Question : I do not want <ROW num="1"> in xml file I need just <row> </row>. Because I want to change it to <TRANSACTIONS> <TRANSACTION> using Replace. Please can any one help me to remove num = "1" and num ="2" from xml file ? --MY SPOOL SCRIPT STAR
-
Correct sequence of steps to install HP 564 Ink cartridges!!!
Correct sequence of steps to install HP 564 Ink cartridges for the compatible printers: http://h20464.www2.hp.com/media/6CBE733F-4185-4C33-80B9-926A56E341F2/html/aio52_ink_replace_cartridg... I work for HP but my posts and replies are my own. Have a