cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP Envelope encodingStyle

Former Member
0 Kudos

Hi experts,

I have a PI SOAP Receiver, sending to a Java Powerbuilder app. I am getting an HTTP 200, but with an error message in SXMB_MONI:

<SAP:Category>XIAdapterFramework</SAP:Category>

<SAP:Code area="MESSAGE">GENERAL</SAP:Code>

<SAP:AdditionalText>com.sap.aii.af.ra.ms.api.DeliveryException: java.lang.NullPointerException; HTTP 200 OK</SAP:AdditionalText>

When I execute the same scenario using soapUI instead of PI, using the same SOAP Payload, I get no SOAP body, only this HTTP Response (HTTP 200 OK as well):

" No mapping found for 'class java.lang.String' using encoding style 'http://xml.apache.org/xml-soap/literalxml' "

When I change the Payload slightly in soapUI, ie. adding an encodingStyle attribute to the SOAP Envelope, I get the expected response message ("Test OK").

To summarize:

PI sends this SOAP Envelope, which the remote app cannot accept (no mapping found):

<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/">

When the SOAP Envelope is modified like below, the test is ok:

<SOAP:Envelope xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"

SOAP:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

Any ideas how I can add an encodingStyle attribute ?

kr,

Peter Glas

Accepted Solutions (1)

Accepted Solutions (1)

former_member206760
Active Contributor
0 Kudos

try using "do not use soap envelope" in the receiver soap adapter and chk

Former Member
0 Kudos

Removing the SOAP Envelope results in an HTTP 400.

former_member181962
Active Contributor
0 Kudos

Try changing the adapter type from SOAP 6.40 to SOAP 7.10 and see if works.

Regards,

Ravi

former_member206760
Active Contributor
0 Kudos

actually this option is only used if u want to create custome soap headers...

tick " do not use soap envelope" and remove user authentication if u configured

Former Member
0 Kudos

I'm in a PI 7.0 system

Former Member
0 Kudos

Please elaborate on how to implement the custom SOAP header.

former_member206760
Active Contributor
0 Kudos

if u have any user authentication then try removing it and tick do not use soap envelope ..

is it working?

Former Member
0 Kudos

OK, tried it, but no success.. Frankly, I don't see how this could solve the problem.

former_member206760
Active Contributor
0 Kudos

An sdn search gave me this thread to create custom SOAP envelop

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi ,

I think you can achive this by doing an XSLT Mapping.