cancel
Showing results for 
Search instead for 
Did you mean: 

Problem with SOAP receiver

Former Member
0 Kudos

Hi all,

Facing a problem with SOAP receiver. We have a webservice which gives a response based on a request and is hosted in the client network. We can get the response while testing using Service registry. But while sending the request through PI, we are getting an error and it seems it is a payload envelope error but we are not able to identify what is the root cause of it, because the same works through SR.

I am attaching the payloads when I test through Service registry.

Inbound:

<?xml version="1.0" encoding="UTF-8"?>

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<SOAP-ENV:Body SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<yq1:hello xmlns:yq1="http://DefaultNamespace">

<yourName xsi:type="xs:string">Mark</yourName>

</yq1:hello>

</SOAP-ENV:Body>

</SOAP-ENV:Envelope>

Outbound:

<?xml version="1.0" encoding="UTF-8"?>

<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:Body>

<ns1:helloResponse xmlns:ns1="http://DefaultNamespace" soapenv:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">

<helloReturn xsi:type="xsd:string">Hello Mark</helloReturn>

</ns1:helloResponse>

</soapenv:Body>

</soapenv:Envelope>

I am getting the following error in CC monitoring:

SOAP: response message contains an error Application/UNKNOWN/APPLICATION_ERROR - application fault

And the following error in SXMB_MONI:

<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>

- <!-- Call Adapter

-->

- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">

<SAP:Category>XIServer</SAP:Category>

<SAP:Code area="MAPPING">NO_MAPPINGPROGRAM_FOUND</SAP:Code>

<SAP:P1>Object ID 0BD2B6F365FC33999D057DBECA0D7C9E Software Component AB1BA230F9D811DDAF81CB2DAC17640F</SAP:P1>

<SAP:P2 />

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText />

<SAP:Stack>Mapping program is not available in runtime cache: Object ID 0BD2B6F365FC33999D057DBECA0D7C9E Software Component AB1BA230F9D811DDAF81CB2DAC17640F</SAP:Stack>

<SAP:Retry>M</SAP:Retry>

</SAP:Error>

If anyone has come across something similar, please help.

Regards,

Hari

Accepted Solutions (0)

Answers (6)

Answers (6)

Former Member
0 Kudos

Closing the question. Thanks to all.

Former Member
0 Kudos

Hi,

ask your basis guys to do a full CPACache refresh using PIDIRUSER................and then see if this refresh had any errors in it........if it was successful, then rerun your scenario...........if CPACache refresh did not had any errors, then check in ID, in interface determination whether the interface mapping with its namespace is specified properly and then check in IR whether that interface mapping exists and it has the relevant msg mapping in it..........

Regards,

Rajeev Gupta

Former Member
0 Kudos

This is still not a mapping error.

I defined a FMT in the Service Interface of my message, mapped it to the RFC Fault message in a MM and put that all in the OM.

I get the same error as above:

An application error in the initial line in SXMB_MONI

A NO_MAPPINGPROGRAM_FOUND In the others

Before you start with caches, etc. The problem is not there, the problem is in recognizing the return from the service as the fault message, which is failing apparently.

And yes, I reactivated everything in design & config

I refreshed the cache in SXI_CACHE

I did a CPACache refresh as well

Any ideas?

Kr,

Frederik-Jan.

Former Member
0 Kudos

Additional info: The problem is the same in the entire environment here (PI DEV, QAS and PRD) and on another PI machine.

So I doubt very much if it's cache related.

Edit: This is the 'application error':


  <?xml version="1.0" encoding="UTF-8" standalone="yes" ?> 
- <!--  XML Validation Inbound Channel Response 
  --> 
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="1">
  <SAP:Category>Application</SAP:Category> 
  <SAP:Code area="UNKNOWN">APPLICATION_ERROR</SAP:Code> 
  <SAP:P1 /> 
  <SAP:P2 /> 
  <SAP:P3 /> 
  <SAP:P4 /> 
  <SAP:AdditionalText>application fault</SAP:AdditionalText> 
  <SAP:ApplicationFaultMessage namespace="http://xml.apache.org/axis/">hostname</SAP:ApplicationFaultMessage> 
  <SAP:Stack /> 
  <SAP:Retry>M</SAP:Retry> 
  </SAP:Error>

Edited by: Frederik-Jan Roose on Dec 7, 2009 11:11 AM

Former Member
0 Kudos

The hostname is not the problem per se though. What I did was add a letter to the URL we call so I can simulate the error of a service not being available, since that is what we want to catch.

We're calling one of those European Union webservices to retrieve basic information, and at times the URL is not available. We need to catch that error and make it a proper exception in the monitor instead of a full blown error like it is now.

So the host exists, and is available, though the URL we are calling is wrong (for testing purposes).

Kr,

Frederik-Jan.

former_member1009864
Participant
0 Kudos

hi,

Harikumar Sasid... it seems mapping error only .

but may be the error from Web service side just check the WS out of XI.If its working fine then just tack ur payload data and test WS with that that data then u can get the soluction.

Thanks

Former Member
0 Kudos

It is not a mapping related issue............coz we tried doing the same using both with mapping and without mapping.

former_member200962
Active Contributor
0 Kudos

Hi,

<SAP:Code area="MAPPING">NO_MAPPINGPROGRAM_FOUND</SAP:Code>

This is the part of error that you are getting which mentions that runtime is not able to find the mapping program

coz we tried doing the same using both with mapping and without mapping.

so when you test without mapping (i.e. remove the mapping program)the change is not being reflected still mapping program is searched for.....make dummy change to Interface Determination and again activate....go to SXI_CACHE and do a cache refresh

Regards,

Abhishek

siddhesh_pathak4
Contributor
0 Kudos

Hello,

1. Check out if your mapping program is available in IM.

2. Test your scenario from ID.

3. Make sure that your test data is proper. This may happen if the test data is wrong. check with some other data.

Former Member
0 Kudos

do some dummy changes in mapping program

then do cache refresh and execute ur scenario.

former_member200962
Active Contributor
0 Kudos

Hi,

It is not a payload envelope error...during runtime XI is not able to find the mapping program assigned in Interface Determination...please check the Interface determination for the same...also check the cache updates for any error....removing / renaming the mapping program from IR can also cause the error...

Regards,

Abhishek.

Former Member
0 Kudos

Hari,

Is looks like your interface determination is using a mapping that does not exist (anymore). Try re-creating the interface determination and run the process again.

Kind regards,

Koen