Skip to Content

Before we proceed further I must request all those who are at their first hand configuring the RFC sender adapter to read the weblog The specified item was not found. by Mike. This i believe is a one of the best weblog addressing the issue of configuring the RFC sender adapter.

Note : In this weblog my comments will be on the basis of the two part weblog RFC -> XI -> WebService – A Complete Walkthrough (RFC -> XI -> WebService – A Complete Walkthrough (Part 1) & RFC -> XI -> WebService – A Complete Walkthrough (Part 2)).

I hope this weblog will hence act as a troubleshooting guide for the beginners trying out that scenario.

RFC SENDER ADAPTER

1. The Program ID – This is Confusing !!! 

Q: Where can I find the program id ?   Ans: Well, the program id can be anything, even your name.  🙂 But the catch here is that you should have the same in both the RFC destination and your RFC adapter.

Note: If you have read the above mentioned blog by Mike, he has used sdnweblog as the program id and the same is used in the RFC destination and also the RFC adapter Interesting read – Question 22 of SAP note 730870   An extract of the same is   “To identify a XI RfcAdapter sender channel within the SAP Gateway it is important that its Program ID is unique within this Gateway.So try to avoid using common phrases as Program ID like ‘rfcadapter’ or ‘rfcToXmb’.  To check which Program IDs are registered at the SAP Gateway the gateway-monitor can be used via transaction SMGW. Select Goto -> Logged on Clients. Registered RFC-Servers have a System-Type of ‘REGISTER_TP’. The Program ID of the registered RFC-Servrer can be found in column ‘TP name’. Unfortunately the list within SMGW only shows the truncated version of the Program ID (column ‘TP name’). To get the full name, the details of an entry have to be selected. As an alternative the report RSGETALL_REG_SERVERS can be executed in transaction SE38. The output of this report will show the full names of the Program ID in column ‘Registered PROGID’. This functionality is also available in the function module GWY_READ_CONNECTED_SYSTEMS which can be executed in transaction SE37.”

2. Application Server(Gateway) and Application Server Service(Gateway) – Where to find it ?

TCODE : SMGW -> Goto-> Parameters -> Display   You will find the required info under Attributes. Application Server(Gateway) is the Gateway hostname and Application Server Service(Gateway) is the Gateway service. Usually the Gateway service is sapgwXX where XX is the system number.

3. The RFC destination – Trouble trouble and loads of trouble !!  a. Make sure that the RFC destination is to be created in the R3 systems and not XI. b. If in your adapter monitoring you find a message as ‘Could not start server: Connect to SAP gateway failed’, then try to replace the GWHost (gateway host) with the IP of the R3 system. c. Check out the SAP note 730870 for the FAQ on the RFC adapter. 

4. com.sap.aii.adapter.rfc.afcommunication.RfcAFWException: senderAgreement not found – Check if you have provided * as the value in your party for both the sender agreement and the RFC sender communication channel. Try creating both of them without the * as the value.

SOAP RECEIVER ADAPTER

1. SOAP Action – Action ??????

Ref: Point 5  In case your WSDL does not have a SOAP Action defined (search for soapAction in your WSDL, it will give you the action), try with a blank SOAP Action in your Adapter. In case it doesnt succeed then try the following;  The SOAP action = SOAP operation.   You will find it under the tag . Eg. .   To find the list of Operations in your WSDL try this. Open the WSDL in a XML Editor (eg. XML Spy). Click on the Schema/WSDL tab and you will find all the operations listed.  See the following screen shot;

in this case getDistance is the action

image

2. The Target URL – Ehhh, Excuse me !!!!!

To find the Target URL search the WSDL for ‘wsdlsoap:address location’. Also ref. point 5

3. Configure Proxy – Why should I ?  If your network involves a proxy that details have to be provided in the adapter. Also if the proxy involves an authorization, the Proxy User Authentication details need to be filled in. Else a Delivery Exception is sure to be raised.

4. SAP Note – FAQ’s on the SOAP adapter  SAP Note : 856597

5. Additional Notes – XML Spy users  An Easy way of finding out your web service’s right address and SOAP action using XML Spy is: 

1. In the menu, Go to SOAP -> Create new SOAP request

2. Browse the WSDL file or enter the full URL of the WSDL (it should be ?wsdl)

3. Select the operation you want to access

4. After the request has been generated, go to SOAP, Change SOAP request parameters.

6. “Delivery Exception: invalid content type for SOAP:TEXT/HTML.”

a. The reason can be the wrong address in your SOAP adapter.

b. What else can I do?

As per default the SOAP adapter sends the SOAP message the content type text/xml. If for some reason it is not doing that then use the messagetransformbean. In you adapter provide the following;

Go to the SOAP receiver communication channel module tab. Add the module “localejbs/AF_Modules/MessageTransformBean” before the standard module. Provide the parameter name Transform.ContentType and value text/xml

7. com.sap.aii.af.ra.ms.api.DeliveryException: invalid content type for SOAP: TEXT/PLAIN Try contacting the WS team and finding out the Content Type expected by them. Using the MessageTransformBean, the content type can be changed.

8. My content type is showing application/xml but this is not expected.

Confirm if you have  checked the option “Do not use SOAP envelope”. If this is checked then the content type by default is application/xml. If the problem still persist use the MessageTransformBean to help you out.

Running into more troubles ? Post it here or in the forum and i will keep updating the above list.  For more FAQ’s on XI click The specified item was not found.

To report this post you need to login first.

14 Comments

You must be Logged on to comment or reply to a post.

  1. Hi,

    Please take a look at Michal’s FAQ blog. Michal has been keeping uptodate with all the questions regarding various XI components.

    Cheers,
    Naveen

    (0) 
    1. Shabarish Vijayakumar Post author
      Naveen,

      This blog is indeed not a substitute for Mike’s FAQ blog (Mike thanx a ton for that blog) !!! 🙂

      The reason why this blog of mine came up was due to the number of raising queries (same as in this blog), that used to come up in the XI forum or via mails when SDNers were trying out the RFC -> SOAP scenario. I have mentioned that the blog is a sequel to the 2 part blog on RFC -> SOAP.

      Regards,
      ShabZ

      (0) 
      1. Michal Krawczyk
        Hi,

        I will update the faq with some new questions
        (from your weblog)
        and add link to your weblog:)
        this will definitely be a good idea:)

        Regards,
        michal

        (0) 
  2. James Morales
    for the SOAP receiver adapter… any guidelines for how to use those sections?? i can’t seem to load the certificate I imported into the Visual Administrator.
    (0) 
  3. ravi shankar
    Got below useful information from forum that resolved error with “Test Connection” of sender RFC destination in SAP R3 business sytem. Hope this would help others reading this weblog.
    ========

    To make ur TCP/IP RFC destination work, follow steps as below,

    1. Enter information like, gateway host, gateway service which you can find using transaction smgw.
    2. Select Registered Program Id option button and enter any string as a program id.
    3. Now go for configuring communication channel. Provide same parameters for Gateway, Gateway Service and Program Id.
    Provide rest all required info like application server, system number, user name , password etc.
    4. Now activate your communication channel.
    5. Go back to your RFC Destination and now test your connection. It should be working.
    Before testing your RFC destination, don’t forget to ACTIVATE your communication channel.

    (0) 
  4. Vaibhav Bhargava
    Hi

    Similar to your case, We are using SAP PI 7.0, WebAS 2004s with SP9 installed. I am doing a File to Web Service scenario. The Web Service is an EJB deployed on an internal R/3 via SDM on WebAS 2004.

    XI uses Soap Adapter as the receiver communication channel to call the Web Service.

    While end to end testing I get the following error –
    Application/UNKNOWN/APPLICATION_ERROR-application fault

    what could be the problem?

    Vaibhav

    (0) 
  5. nutan champia
    Soap receiver error:
         SOAP: call failed: java.net.UnknownHostException: http://www.webservicex.net

    SOAP: error occured: com.sap.aii.af.ra.ms.api.RecoverableException: http://www.webservicex.net: java.net.UnknownHostException: http://www.webservicex.net

    MP: Exception caught with cause com.sap.aii.af.ra.ms.api.RecoverableException: http://www.webservicex.net: java.net.UnknownHostException: http://www.webservicex.net

    How to resolve it? Please help

    Regards,
    Nutan

    (0) 
  6. Senthil Kumar
    Hi,
    I have a web service defined in SAP and want to consume it in a different application.

    I have the below code from the XML Spy based on the WSDL. I want to pass on the login credential details also along with the SOAP message. Can you please let me know how could this be done?


         

              
                   aaaaaaaaaaaa
                   a
              

         

    (0) 

Leave a Reply