cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP receiver adapter configuration issue

Former Member
0 Kudos

Hi Everyone,

When I am trying to excute a sync scenario from SAP<>XI<>Webservice from Integration engine , I am getting the below error message.

Error while sending message: com.sap.aii.af.ra.ms.api.DeliveryException: 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'.

In the receiver SOAP adapter, I have configured Transformation module where I kept the MessageTransformationBean in processing sequence as a priority and also provided the module configuration.

ModuleKey: transform

ParameterName: Transform.ContentType

Parameter Value: application/soap+xml;charset=utf-8.

But still get the above error message in the communication channel. I am using certificates in my configuration that were deployed in visual Admin.

In the adapter configuration, I have just provided the Target URL, Configured User Authentication, certificate authentication and SOAP action.

Can anyone help me.. how to rectify the issue.....

Thanks in advance,

Hareen

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member

Hi,

Use the Transformation Module like this:

Processing Sequence:

localejbs/AF_Modules/MessageTransformBean - Local Enterprise Bean - TransformTo

sap.com/com.sap.aii.af.soapadapter/XISOAPAdapterBean - Local Enterprise Bean - soap

localejbs/AF_Modules/MessageTransformBean - Local Enterprise - TransformFrom

Module Configuration:

TransformTo - Transform.ContentType - application/soap+xml; charset=utf-8

TransformFrom - Transform.ContentType - text/xml; charset=utf-8

Marlon

Former Member
0 Kudos

Forgot to mention, set the flag Do Not Soap Envelope.

Former Member
0 Kudos

Hi Marlon,

I think the solution proposed would not work because we are using SOAP 1.2 that is only supported by AXIS framework on top of SOAP.

Thanks,

markangelo_dihiansan
Active Contributor

HI Hareen,

I decided to give SOAP1.2 using the standard SOAP Adapter a try

There are a few noticeable differences between the request message of SOAP1.1 and SOAP1.2

1.) SOAP 1.1 uses a different namespace from SOAP 1.2. For SOAP 1.1 it is "http://schemas.xmlsoap.org/soap/envelope/" while for SOAP 1.2 it is "http://www.w3.org/2003/05/soap-envelope".

2.) SOAP 1.2 does not use SOAPAction in its header.

3.) Content type is also different, for SOAP 1.1 it is "text/xml" while for SOAP 1.2 it is "application/soap+xml"

So a sample request for SOAP 1.1 would be like this:

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

SOAPAction: "http://sampleaction"

While for 1.2 it is:

Content-Type: application/soap+xml;charset=UTF-8;action="http://sampleaction"

The SOAP action is moved to the content type (experts please correct me on this).

Based on the differences, you need:

1.) Construct the correct SOAP Envelope for request message mapping and remove it for the response mapping

2.) Use MessageTransformBean to change content type

3.) Leave SOAPAction as blank

I think dynamic soap action is no longer possible because the action is hardcoded in the module configuration (please correct).

Hope this helps,

Mark

Former Member
0 Kudos

Hanumantha, Could you please let me know how did you fix this issue?

Thanks..

Former Member
0 Kudos

Hi ,

Below solution worked for us, when we faced similar issue.

Try out, if it works for u as well.

1) Use HTTP Adapter instead of SOAP.

Transport Protocol : HTTP 1.0

Message Protocol : XI Payload in HTTP Body

Adapter Engine : Integration Server

Addressing type : URL Address.

Target Host:

Service Number :

Path Prefix:

Authentication type : we hv used Ananymus login, as our login details in payload header.

Content Type : application/soap+xml;charset=UTF-8( this is IMP).

Header Fields.

Name value

Host target host

XI Payload Manipulation

XML Code : UTF-8

Hope, this helps...

follow below link as well, he is also facing similar issue,

-santosh.

Edited by: Santosh K on Jun 7, 2011 4:56 PM

Former Member
0 Kudos

Your Parameter Value application/soap+xml;charset=utf-8 is wrong.

Try with: text/xml;charset=utf-8

Configure Module as follow:

transform || Transform.ContentType || text/xml;charset=utf-8

Former Member
0 Kudos

Hi,

I have tried with the parameter earlier, but still have the same issue. Could you please look into more.

When you see the error message " 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'." It is not able to accept text/xml;charset=utf-8.

Thanks,

Former Member
0 Kudos

Hi Hareenkumar,

text/xml is the content type for SOAP 1.1 and application/soap+xml is the content type for SOAP 1.2. It looks like the server expects SOAP 1.2...

You can check this?

Former Member
0 Kudos

Hi,

I think it is SOAP 1.2. Need to confirm..

I hope if it is SOAP 1.2 then we need to go for AXIS framework. Could you please provide some information on configuration of Axis framework.

Thanks,

Former Member
0 Kudos

Yes, you need to use Axis Soap Adapter.

For configuration, refer to sap help:

http://help.sap.com/saphelp_nw04/helpdata/en/45/a4f8bbdfdc0d36e10000000a114a6b/frameset.htm

Former Member
0 Kudos

Hi,

I have gone through the WSDL, that is SOAP 1.2.

Now, I would like to know how to set up the configuration for this.

And, parallely I would like to implement the same with SOAP 1.1.

Please help me out...........

Thanks,

Former Member
0 Kudos

Hi Simone,

Could you please share the URL which works now? Above URL doesnot work now, and even i face similar issue faced by Hanumanth.

Thanks!