SOAP receiver adapter - SOAP request over HTTPS to ther port than 443?
Hi guys!
Is it possible to send SOAP request from XI to target web service over HTTPS to other target port than 443? Our 3rd party web service is running other port..
Thanx a lot, Olian
Hi Olian,
Check out this,
http://www.grc.com/port_443.htm
http://en.wikipedia.org/wiki/HTTPS
The port 443 is just the default port. One can theoretically run protocols over any port. Port assignments are just suggestions to the world as to what to expect on certain ports
Regards,
Prateek
Similar Messages
-
Enable communication HTTPS in SOAP Receiver Adapter
Hi gurus,
I have configured the soap receiver adapter with the URL:
"https://www.xxxx.com/yyyyyyyyyy.asmx" without the user authentication.
I have executed the webservice since SOAP-UI and works well. But if I run the webservice from SAP XI does not work. In the transaction SXMB_MONI shows the following error:
<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
<SAP:Category>XIAdapterFramework</SAP:Category>
<SAP:Code area="MESSAGE">GENERAL</SAP:Code>
<SAP:P1 />
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: Connection closed by remote host.</SAP:AdditionalText>
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack />
<SAP:Retry>M</SAP:Retry>
</SAP:Error>"
What is happening?
Thanks,
Jose.Jose,
client certificate is the "top" authentication mechanism during SSL handshake, like this :
- XI authenticate the SSL certificate (server) issued by target server against a (trusted) list of known certification authority, then target will ask XI to present its own certificate (client) and it will make sure this client certificate can be trusted (verifying it has been certified by a known authority). Handshake is "done"
but you can also have
- "anonymous" mode (XI will make sure SSL cert provided by the target has been issued - and so can be trusted - by a (well)known certification authority), that's it. Target does not expected any other security feature
- user/pwd over a SSL connection (like above, but you'll also have to provide a user and pwd for authentication at target level)
Hope this helps
Chris -
HTTPS config in SOAP receiver adapter ?
Hi Guys,
I have configured the soap receiver adapter with the URL
*https://xxxx.abcd.com/xyzv/bbbb.asmx with the user authentication *
I have tested the url and the user and pw in the browser and they are working fine but the messages are failing the soap receiver adapter with the 401 unautorized error as the message from the Audit log in the RWB.
Delivery of the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.aii.af.ra.ms.api.RecoverableException: invalid content type for SOAP: TEXT/HTML; HTTP 401 Unauthorized: java.io.IOException: invalid content type for SOAP: TEXT/HTML; HTTP 401 Unauthorized. Setting message to status failed.
Do i need to configure the Java Stack for HTTPS ? The communicaion is between the XI system and a third part system internally.
any help would be appreciated ?
Thanks,
SriniHi Guys,
I have solved the problem and NTLM works with PI 7.0 but we need to configure soap axis adapter
The Windows NTLM authentication is supported by Axis's CommonsHTTPSender handler and consequently it is supported by the Axis adapter's corresponding handler com.sap.aii.adapter.axis.ra.transport.http.CommonsHTTPSender. Read about How Can I use CommonsHTTPSender as the transport handler? if CommonsHTTPSender is not enabled on your system. Once it is enabled, you can use com.sap.aii.adapter.axis.ra.transport.http.CommonsHTTPSender instead of default com.sap.aii.adapter.axis.ra.transport.http.HTTPSender as the transport handler in the module configuration and set the authentication setting to NTLM and enter usename as domain\username in the channel configuration
To use CommonsHTTPHandler, the optional Jakarta-Commons-Net, Jakarta-Commons-HttpClient, Jakarta-Commons-Codec libraries are required. Make sure that these libraries are available for the Axis adapter at the deployment check page If these components are not available, you will need to include the corresponding jar files (commons-codec-1.3.jar, commons-httpclient-3.0.jar, and commons-net-1.0.0-dev.jar from the Axis 1.4 release) in aii_af_axisprovider.sda and deploy this archive (see How to prepare aii_af_axisprovider.sda?).
The provider.xml file must include the jar-name entries for these jar files, as shown in:
<jars>
<jar-name>commons-net-1.0.0-dev.jar</jar-name>
<jar-name>commons-codec-1.3.jar</jar-name>
<jar-name>commons-httpclient-3.0.jar</jar-name>
</jars>
Once you do all the above settings, NTLM works fine
Thanks,
Srini -
Soap Receiver Adapter Error. Pls advice urgent
Hi All,
While using Soap Receiver Adapter for synchronous communication
*My Soap Request is:*
<?xml version="1.0" encoding="UTF-8" ?>
<ns1:SendMessage xmlns:ns1="urn:MMWebSrvService">
<strFrom>XI</strFrom>
</ns1:SendMessage>
*My Soap Response from server is:*
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!-- Inbound Message
-->
<tns:SendMessageResponse xmlns:tns="urn:MMWebSrvService" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<return xsi:type="xsd:int">-1</return>
<strErrorDescription xsi:type="xsd:string">String reference not set to an instance of a String. Parameter name: s</strErrorDescription>
</tns:SendMessageResponse>
How to resolve the error.
RegardsHenry,
Your xml message is not xsd compliant...see if you can generate a xml message using your wsdl with random values, compare that to your imcoming msg..and thats your issue..
Hope that helps
Regards
Ravi Raman
Reward points if helpful ! -
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 -
Soap receiver adapter payload with certficate signature
I have a requirement.. where XI calls external webservice using SOAP.
I have configured SOAP receiver adapter, but the webservice wants the certificate authentication.. From XI we sent the certficate to external webservice and then in the comm channel I did activate the 'certficate' check box. It did not work.
For test purpose now they have deactivated the certficate authentication in their end.. it works if they deactivate. It means there is no issue with request structure.. purely the issue is when I use the certficate.
External webservice sent me the copy of the soap request which works for them.. <b>that has security signature inside the payload.</b> ( I have atteched below).
If anybody has done it have an idea how to do it please let me know.
- <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
- <soapenv:Header>
- <wsse:Security xmlns:wsse="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-secext-1.0.xsd">
<wsse:BinarySecurityToken xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" EncodingType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-soap-message-security-1.0#Base64Binary" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" wsu:Id="CertId-62149565">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</wsse:BinarySecurityToken>
- <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#">
- <ds:SignedInfo>
<ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
<ds:SignatureMethod Algorithm="http://www.w3.org/2000/09/xmldsig#rsa-sha1" />
- <ds:Reference URI="#id-24819136">
- <ds:Transforms>
<ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#" />
</ds:Transforms>
<ds:DigestMethod Algorithm="http://www.w3.org/2000/09/xmldsig#sha1" />
<ds:DigestValue>6Mzpm7P8k3f8UuxbBMP4ZTC83Yc=</ds:DigestValue>
</ds:Reference>
</ds:SignedInfo>
<ds:SignatureValue>HcqMChOzlHFXTRRAf7kyTSQ5Jd53Yiu7oFLjkh5P3vayo2G4sjFv/qFKHX0E6a5xkBMTIRrW+30t7IdB4X0x35FPO1dTulz37KM1/jpLSGVxnjnWWeFZvseVjJsk5NTPiSE6GAjO7rFW/Vled2djATTmZsIgJCIfhLYVp112Uis=</ds:SignatureValue>
- <ds:KeyInfo Id="KeyId-21369792">
- <wsse:SecurityTokenReference xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" wsu:Id="STRId-29015968">
<wsse:Reference URI="#CertId-62149565" ValueType="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-x509-token-profile-1.0#X509v3" />
</wsse:SecurityTokenReference>
</ds:KeyInfo>
</ds:Signature>
</wsse:Security>go through this webinar and follow the steps...It will solve your problem..
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/1b657d59-0c01-0010-4fa8-f792fa412823
Regards,
Ravi -
Soap Receiver Adapter - No Response Message
Hi, I've got the following scenario: Idoc - XI - Webservice. I've imported the WSDL from the .NET webservice and used the input and output messages in a syncronous interface. I've setup a SOAP Receiver adapter with the Webservice details. Everything is working fine when I call the webservice and the data is received 100% at the target system, but I am not getting ANY response back on XI.
RECEIVER SOAP ADAPTER Audit LOG:
2008-01-24 16:41:57 Success SOAP: request message entering the adapter with user J2EE_GUEST
2008-01-24 16:41:57 Success MP_LEAVE1
2008-01-24 16:41:57 Success The message was successfully delivered to the application using connection SOAP_http://sap.com/xi/XI/System.
2008-01-24 16:41:57 Success Acknowledgement creation triggered for type: AckNotSupported
2008-01-24 16:41:57 Success SOAP: completed the processing
2008-01-24 16:41:57 Success SOAP: continuing to response message 83638fb0-ca8a-11dc-b36c-00145eed9500
2008-01-24 16:41:57 Success SOAP: sending a delivery ack ...
2008-01-24 16:41:57 Success SOAP: sent a delivery ack
2008-01-24 16:41:57 Success The message status set to DLVD.
2008-01-24 16:41:57 Success Acknowledgement sent successfully for type: AckNotSupported
Has it got anything to do with the "AckNotSupported" type? Is "AckNotSupported" the default setting for the receiver SOAP adapter? If so, where do I change this setting?
When I call the webservice with the exact same input using a standalone tool, I get the response message back 100%. Any help will be appreciated.
Thanks
RudiHey
you are confusing between a response and an acknowledgement.
response and acknowledgement and not one and the same thing.
response is basically used when you send some query to the receiver system and expect a set of value(s) for your query.for e.g sending a query to a Database(JDBC) or SAP system(RFC)
and acknowledgement is just a notification that the message was receiver by the receiver correctly,it does not returns you a set of value(s).
now coming to your question,ALEAUDIT IDOC is generated when an IDOC is posted,since in your case you are not posting and IDOC,instead your are sending it ,i m not sure if ALEAUDIT will be generated or not,one thing that will come to your rescue is that every receiver SOAP adapter expects a HTTP response(irrespective of you explicitly asking it or not).
a HTTP 200 means that messages were posted successfully,and HTTP 500 means application error,get this HTTP response and send it back to the SAP system,most probably you would need to use BPM for this.
Thanx
Aamir
Edited by: Aamir Suhail on Jan 24, 2008 11:26 AM -
SOAP Receiver Adapter Always "Running"
I have a SOAP receiver adapter that is working fine. I call an MDM web service, which sends a response, but I do not need it. I have tried a synchronous and asyncronous interface. Both work fine.
But...with both, the communication channel monitor in RWB always shows a Short Log of "running".
Is this right? I expected that the Short Log value would reset to inactive or something.
Processing Details...
2009-01-28 10:13:29 Success Message successfully received by messaging system. Profile: XI URL: http://snadc80i:50000/MessagingSystem/receive/AFW/XI Credential (User): PIISUSER
2009-01-28 10:13:29 Success Using connection SOAP_http://sap.com/xi/XI/System. Trying to put the message into the receive queue.
2009-01-28 10:13:29 Success Message successfully put into the queue.
2009-01-28 10:13:29 Success The message was successfully retrieved from the receive queue.
2009-01-28 10:13:29 Success The message status set to DLNG.
2009-01-28 10:13:29 Success Delivering to channel: SOAP_MDMIn_MDMUpdateRecord
2009-01-28 10:13:29 Success MP: Entering module processor
2009-01-28 10:13:29 Success MP: Processing local module localejbs/sap.com/com.sap.aii.af.soapadapter/XISOAPAdapterBean
2009-01-28 10:13:29 Success SOAP: request message entering the adapter with user J2EE_GUEST
2009-01-28 10:13:29 Success SOAP: completed the processing
2009-01-28 10:13:29 Success SOAP: sending a delivery ack ...
2009-01-28 10:13:29 Success SOAP: sent a delivery ack 2009-01-28 10:13:29 Success MP: Leaving module processor
2009-01-28 10:13:29 Success The message was successfully delivered to the application using connection SOAP_http://sap.com/xi/XI/System. 2009-01-28 10:13:29 Success The message status set to DLVD.
Thanks,
KeithShort Log only displays the status of communication channel. So if it says running, then it would mean that the channel is in running status. When not in use, it doesn't get deactivated itself. I guess "running" is what people wait to see
Regards,
Prateek -
SOAP Receiver Adapter - Read Header data on Synchronous Response
I have a scenario - flat file to SOAP. The web service provider sends a response that contains data in the Header that I need to access. I have tried to use the "Do Not Use SOAP envelope" option on my receiver SOAP adapter, and I have configured my request message type to include the soap envelope elements. However I'm getting the following error from the web service
com.sap.engine.interfaces.messaging.api.exception.MessagingException: SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION - HTTP 415 Cannot process the message because the content type 'application/xml' was not the expected type 'text/xml; charset=utf-8'.
I've read some inputs on this error that say to use the Transform bean to adjust the content to text/xml. However I'm not sure how to do that. If that is the correct resolution to my problem, can someone provide detailed steps on how to add the Transform bean to the adapter module. I have no experience with adding items to the module tab.
If there are other ways to tackle this scenario to get access to the SOAP Header from the SOAP receiver adapter, please share those as well.
Thanks in advance.
ChrisResolved with the following blog
/people/varadharajan.krishnasamy/blog/2007/01/09/troubleshooting-soap-message--xi -
CDATA element deleted in SOAP receiver adapter
Hello Everybody!
I've got a problem with SOAP receiver adapter. I've made a mapping for synchronous HTTP -> XI -> SOAP interface, in which the request mapping is java mapping, which produce a message like this:
<?xml version="1.0" encoding="UTF-8"?> <ns0:SaveISDocument xmlns:ns0="http://pl.optix.pl/aews">
<ns0:xmlDocument><IMAGES><IMAGE FileName="tmp.xml" ClassName="IVX">
<![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMiI/Pgo8SU5WT0lDMDECiAgPElET0MCiAgICAgPEVESV9EQzQwPgogICAgICA8VEFCTkFNPkVESV9EQzQwPC9UQUJOQU0CiAgICAgIDxNQU5EVD4zMDwvTUFORFQCiAgICAgIDxET0NOVU0OTAzMTAyMzA4MzwvRE9DTlVNPgogICAgICA8RE9DUkVMPjQ1QjwvRE9DUkVMPgogICAgICA8U1RBVFVTPjMwPC9TVEFUVVMCiAgICAgIDxESVJFQ1QMTwvRElSRUNUPgogICAgICA8T1VUTU9EPjI8L09VVE1PRD4KICAgICAgPElET0NUWVASU5WT0lDMDE8L0lET0NUWVACiAgICAgIDxDSU1UWVAWjFJTlYwMTwvQ0lNVFlQPgogICAgICA8TUVTVFlQPklOVk9JQzwvOVk9JQzAxPgo=]]>
</IMAGE></IMAGES>
</ns0:xmlDocument></ns0:SaveISDocument>
In CDATA is a Base64 representation of some file.
I hoped at oubound of SOAP adapter sholud be something like this:
<SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'><SOAP:Header/><SOAP:Body><ns0:SaveISDocument xmlns:ns0='http://pl.optix.pl/aews'>
<ns0:SaveISDocument xmlns:ns0="http://pl.optix.pl/aews">
<ns0:xmlDocument><IMAGES><IMAGE FileName="tmp.xml" ClassName="IVX">
<![CDATA[PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMiI/Pgo8SU5WT0lDMDECiAgPElET0MCiAgICAgPEVESV9EQzQwPgogICAgICA8VEFCTkFNPkVESV9EQzQwPC9UQUJOQU0CiAgICAgIDxNQU5EVD4zMDwvTUFORFQCiAgICAgIDxET0NOVU0OTAzMTAyMzA4MzwvRE9DTlVNPgogICAgICA8RE9DUkVMPjQ1QjwvRE9DUkVMPgogICAgICA8U1RBVFVTPjMwPC9TVEFUVVMCiAgICAgIDxESVJFQ1QMTwvRElSRUNUPgogICAgICA8T1VUTU9EPjI8L09VVE1PRD4KICAgICAgPElET0NUWVASU5WT0lDMDE8L0lET0NUWVACiAgICAgIDxDSU1UWVAWjFJTlYwMTwvQ0lNVFlQPgogICAgICA8TUVTVFlQPklOVk9JQzwvOVk9JQzAxPgo=]]>
</IMAGE></IMAGES>
</ns0:xmlDocument></ns0:SaveISDocument>
</SOAP:Body></SOAP:Envelope>
Unfortunatelly there is something like:
<SOAP:Envelope xmlns:SOAP='http://schemas.xmlsoap.org/soap/envelope/'><SOAP:Header/><SOAP:Body><ns0:SaveISDocument xmlns:ns0='http://pl.optix.pl/aews'>
<ns0:SaveISDocument xmlns:ns0="http://pl.optix.pl/aews"><ns0:xmlDocument><IMAGES><IMAGE FileName="tmp.xml" ClassName="IVX">
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iaXNvLTg4NTktMiI/Pgo8SU5WT0lDMDECiAgPElET0MCiAgICAgPEVESV9EQzQwPgogICAgICA8VEFCTkFNPkVESV9EQzQwPC9UQUJOQU0CiAgICAgIDxNQU5EVD4zMDwvTUFORFQCiAgICAgIDxET0NOVU0OTAzMTAyMzA4MzwvRE9DTlVNPgogICAgICA8RE9DUkVMPjQ1QjwvRE9DUkVMPgogICAgICA8U1RBVFVTPjMwPC9TVEFUVVMCiAgICAgIDxESVJFQ1QMTwvRElSRUNUPgogICAgICA8T1VUTU9EPjI8L09VVE1PRD4KICAgICAgPElET0NUWVASU5WT0lDMDE8L0lET0NUWVACiAgICAgIDxDSU1UWVAWjFJTlYwMTwvQ0lNVFlQPgogICAgICA8TUVTVFlQPklOVk9JQzwvOVk9JQzAxPgo=
</IMAGE>
</IMAGES></ns0:xmlDocument></ns0:SaveISDocument>
</SOAP:Body></SOAP:Envelope>
... which is not correct, because CDATA tags are lost!
Anyone has idea, how to enable adapter to process message right?
Best regards,
MikolajHenrique:
As I wrote - the webservice was wrote by 3rd party software supplier - so I wasn't sure if I could change a specification at this point - that was a reason why I needed a CDATA element. A CDATA element was at entry of this webservice and I couldn't send to it my data correctly using XI. That was a problem. Hope You got it now.
Finally I've managed the problem because 3rd party software supplier agreed to change their service and use <CDATA> tag instead of CDATA element.
I solved the problem but my question still remain not answered.
At OSS I was asked to upload latest SP (now I've got 12 at Java Stack).
If this will help I'll close this thread.
Best regards
Mikolaj -
Problem in testing SOAP receiver adapter using SOAP UI
Dear Experts,
I'm trying to test my SOAP receiver adapter as mentioned in the blog http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/21844. [original link is broken] [original link is broken] [original link is broken] But, my request from ECC proxy keeps failing in XI communcation channel monitor. I've configured my receiver adapter http://ip:8080/mockSoapHTTPBinding and kept the authentication as NONE. Can any of you suggest?
ip - is my system ip shown in ipconfig.
mockSoapHTTPBinding - is the path.
Thanks.What is the error of the messages? Are the messages leaving the SOAP adapter?
Please try both:
1. Go to Runtime Workbench -> Component Monitoring -> Adapter Engine -> Test message. Then, execute the message directly without the intermediate of the Proxy sender. This will allow you to check only the receiver SOAP.
2. Please use the TCPGateway tool attached from the note below. It will be a "man-in-the-middle" between the target WS and the Receiver SOAP channel, tracking the whole HTTP/SOAP message. Check if the message is well-formed.
[Note 856597 - FAQ: XI 3.0 / PI 7.0 / PI 7.1 SOAP Adapter|https://websmp230.sap-ag.de/sap(bD1wdCZjPTAwMQ==)/bc/bsp/spn/sapnotes/index2.htm?numm=856597]
under question "Q: How can I trace the whole message?" -
SOAP Receiver Adapter (Asynchronous Call)
Hi All,
Scenario is Proxy to Webservice asynchronous call.
Scenario configuration is done as follows.
1) Imported the WSDL and using as a asynchronous inbound interface.
2) SOAP receiver channel is configured with the target URL & soapAction as given in the WSDL as (soap address & soap Action).
3) Configured the proxy server details as required.
SOAP channel is successfully sending the message to the application as DLVD.
But the issue is target application not receiving the data. What could be the reason ? I am wondering , i have tried with the external tool like Altova XML Spy & SOAP UI sending data to the webservice & it's working fine.
Please suggest me if anything which can help to resolve this issue.
Thanks
AshwinIn this case you can do the following:
1. start your tcpmon or TCPGateway, add there a listener e.g. on port 9090
2. configure the target URL in TCPGateway for this listener
3. configure the target URL in your XI SOAP Receiver Adapter to http://<ip of TCPGateway>:9090
4. now execute the scenario again in XI
(make sure XI can reach your TCP Gateway, e.g. check Proxy)
I have used this method successfully for error tracking. In some cases it is necessary to add 2 listeners in TCPGateway and route e.g. 9090 to 9191 and from there to the end (I did not analyse why).
Then you will be able to see what XI is really sending and you will see the full response from the partner side. You can then compare the XI request data with those which are sent via soapUI. This should give a clue about the problem.
CSY -
No SOAP Envelope error in SOAP Receiver Adapter
Hello Friends,
Informaiton:-
I have configured one Synchronous scenarion for SAP R/3 to PI 7.1 to Java based web applicaiton.
On the Receiver/Outbound side, i have configured the SOAP Receiver Adapter with the Target URL and SOAP Action.
Outbound and Inbound service interfaces have Request/Response and Fault messages.
Issue:-
While sending the Message, Below error is noticed in ABAP stack SXMB_MONI during the Call Adapter Stage and also in RWB (Channel Monitoring) .
com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.io.IOException: No SOAP Envelope but 1 {}RESPONSES; HTTP 200 OK
I also found that Request message is not reaching to the Java Web server.
I am taking the Same message Payload (found at Call Adapter Stage) and ussing it in XML Altova SPY Web client tool. There it is running scuccessfully and getting the Response message.
please suggest.
Thanks & Regards
JageshHi,
Yesterday i consumed the same WSDL file in Altova XML SPY and there it is working, getting the Response.
Now comparing the SOAP Request message reaching to the Third party Web server (which fall within the same Lane network)
from SAP PI and Altova XML SPY tool. I used TCP Gateway for the below scenarios.
(1)First i sent the SOAP message from PI and observed the RESPONSE message without the SOAP Envelope in TCP Gatway Trace and hence i am getting the No SOAP Envelope Error in PI.
(2)I consumed the same WSDLfile in Altova XML SPY and sent the SOAP message, here i got the Proper SOAP Response message and hence success in this case. (Used the same Data Payload as used in point 1)
(3)Now to identify the issue in the SOAP Request message being sent from PI, i used the same SOAP message sent in step 1 here, that means copy the entire SOAP ENvelope from the TCP gateway Trace and pasted it in Alota Spy and sent, there it is found running (got the response message from Third Party server).
One difference i found in HTTP Protocol statements in SOAP Request message in Point no 1 and Point no 2 above.
HTTP Protocols in Point 1 (Through PI).
POST HTTP/1.0
Accept: /
Host: 172.24.138.142:4544
User-Agent: SAP-Messaging-com.sap.aii.af.sdk.xi/1.0505
CallingType: SA
content-id: <soap-00306EEAC2051ED1839136CEE8564900 sap.com>
Content-Type: text/xml; charset=utf-8
Content-Length: 1195
SOAPACTION: "Action1"
HTTP Protocols in Point 2 (Through Altova).
POST / HTTP/1.1
Content-Type: text/xml
User-Agent: XML Spy
SOAPAction: "Action1"
Host: 172.24.138.142:4544
Content-Length: 1195
Connection: Keep-Alive
Cache-Control: no-cache
Thanks to Mr. Stefan Grube for writting such a nice blog.
Troubleshooting SOAP, HTTP and Mail Adapter Scenarios with TCPGateway
Experts, please suggest me further.
Thansk & Regards
Jagesh -
Hi,
I was given a WSDL file which contains the following:
<wsdl:port name="ZISU_INSTLN_CREATE" binding="tns:ZISU_INSTLN_CREATE">
<soap:address location="http:// hostname:port /sap/bc/srt/rfc/sap/zisu_instln_create/100/zisu_instln_create/zisu_instln_create" />
</wsdl:port>
I've configured a SOAP receiver adapter. In the URL i put the SOAP address location from the WSDL.
Is this correct?
I am seeing the following error when i try to send a message:
Delivering the message to the application using connection SOAP_http://sap.com/xi/XI/System failed, due to: com.sap.engine.interfaces.messaging.api.exception.MessagingException: java.net.ConnectException: Connection refused: connect.
Is the error because of the url I use?
Thx
RobertHi,
I do have details in the message:
- <detail>
- <ns:SystemFault xmlns:ns="http://www.sap.com/webas/710/soap/runtime/abap/fault/system/">
<Host>undefined</Host>
<Component>COREMSG</Component>
- <ChainedException>
<Exception_Name>CX_SOAP_CORE</Exception_Name>
<Exception_Text>SRT: Wrong Content-Type and empty HTTP-Body received: ("HTTP Code 200 : OK")</Exception_Text>
</ChainedException>
and there is lot more if it helps finding the error, but maybe this is already enough.
Also i tried testing with SOAPUI now:
Result is good. I dont get error's. I get a response from my request as expected.
But if I test with XML from the RWB, with he same data as in SOAPUI, i get the error message again.
Conclusion:
SOAPUI can communicate with my SAP ISU system.
But PI cannot communicate with it.
Why?
Thx
Robert -
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
-
Info prologation request license
I sent an e-mail to Sap sapport. They wrote me to post a message to SAP Service Marketplece and the License Department will assist my request. Could you help me, please ? Kind Regards. Sent: 13 June 2008 08:57 To: SAP Support Italy Subject: Info pro
-
Tell Windows that 6680 supports Ogg files
Hi! This is a bit complicated, but I will try my best: When I install PC Suite my Phone(6680) get's detected as a Phone via "Nokia Phone Browser". When I now install Windows Media Player 11 it get's detected as a Camera and as a Mobile directly in "M
-
Google analytics code under OS/X
I have modified the head.html file in the default html gallery to add the Google analytics code as per the instructions provided by Google. I first did this when I was working on a windows platform and all was well; the tracking code worked and the L
-
Has anyone successfully downloaded the plugin for hotmail in mail on the new intel duo core and managed to get it to work? v grateful for any advice on how to do this. i have installed the plugin but it doesn't seem to be recognised in the options fo
-
Dear all, I am new to costing run,by using previous forum from the expert of kumar and rupesh i have studied the costing run process From my understanding 1) For FG/SFG materials with quantity structure to be maintained in material master. 2) Relev