Skip to Content

The reason behind the weblog is when we tried to call Web service from XI, We were getting Fault message. “Authentication Error”, But when we called the same Web service from the Web service testing tool, it was working fine, so we did Research on what was going wrong when we were calling the web service from XI. We found the solution to the problem. This Weblog mainly explains the techniques that was used in solving the problems, which will be useful for every one.

1. How to trace the Web service call in XI.

Prerequisites :

1. Java version > 1.4.0 should have been installed

2. Download the tcpgw.zip from the website into the local m/c

Check OSS Note no 856597

              https://websmp202.sap-ag.de/~sapidb/012006153200000201802006E/tcpgw.zip

image

3. Overwrite HTTP Header fields

Some Web services do not accept the message , if Content type is application/XML in the HTTP Header, it will accept only Text/XML. So While calling the Web service, the content has to be changed, This is possible using Module of the adapter as shown in the screen shot.

HTTP Header field values before using the module

User-Agent: SAP-Messaging-com.sap.aii.messaging/1.0505

content-id: payload-45A352A90948582CE1000000CDEFD4B7@sap.com

content-type: application/xml

Content-Length: 1280

Module name – localejbs/AF_Modules/MessageTranspormationBean

Type – Local Enterprise Bean
Module – This is defined by the user, but the same name should be given in
the module configuration for passing the parameters. In this case
“transform”

In the module configuration ,

Module key – In this case “transform”

Parameter name – TransformContenType

Parameter Value – text/xml;charset=utf-8

HTTP Header field values after using the module

User-Agent: SAP-Messaging-com.sap.aii.messaging/1.0505

content-id: payload-45A352850948582CE1000000CDEFD4B7@sap.com

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

Content-Length: 1280

image

To report this post you need to login first.

7 Comments

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

  1. Varun Garg
    Did you create the soap:envelope using Java or did u try to create a Message Type for it. I am trying to build a message type with the SOAP Envelope and Body and was wondering if you had any example.
    (0) 
  2. Carlos Herrera Castaneda
    Hi!…

    I’m on SP19 for XI 3.0 and I cannot see the Do Not Use SOAP Envelope option anywhere. I only have keep headers, keep attachments,Use Encoded Headers and Use Query String.

    I have to set some other config or apply a patch?

    thanks in advance..

    Carlos.

    (0) 
  3. Mariano Billinghurst
    Hi, great post, just what I need, but I have one problem, I did everything you say and I get this error…

    “com.sap.aii.af.ra.ms.api.DeliveryException: Object not found in lookup of MessageTransformationBean”

    Do you know why?

    Thanks!

    (0) 
  4. Anneke Schultz
    Hi, i got this error when posting a message to a Receiver SOAP adapter:
    SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION – HTTP 415 Cannot process the message because the content type ‘text/xml; charset=utf-8’ was not the expected type ‘application/soap+xml; charset=utf-8’.

    According to numerous blogs i have taken off the SOAP envelope and used the MessageTransformBean to change the content-type to ‘application/soap+xml; charset=utf-8’.

    Then i got this error:
    SOAP: response message contains an error XIAdapter/HTTP/ADAPTER.HTTP_EXCEPTION – HTTP 400 Bad Request.

    Is the only option then to install the Axis adapter for conversion to SOAP 1.2? If so, where do i go to install the .jar files?

    Thanks

    (0) 

Leave a Reply