cancel
Showing results for 
Search instead for 
Did you mean: 

Webservice pointing/Triggering a different interface

Former Member
0 Kudos

Hi Experts,

I am facing a problem in a scenario where in call is made from a .Net side to SAP using a webservice throgh PI. All the configuration and repository object test is fine and when a call is made to a web service from Webservice Navigator it triggers the correct interface and request and response succesfull message is shown in PI (SXMB_MONI).

Also WSDL and URL for Interface is being generated from ID by option "Display WSDL" when we right click on Sender Agreement for the particular Interface.

Scenario with example,

I am trying several webservice call using BAPI interface in IR like Simulate Order and Change Order BAPI, for simulate Order web service call from .net side triggers the correct interface and request and response succesfull message is shown in PI (SXMB_MONI).

But when call is being made from .net side for Change Order it triggers the Simulate Order Interface in PI and passes the payload of Change Order and it is obvious to get the following error as mapping exception because payload is different than the triggered interface.

*Error Message:*

<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="MAPPING">EXCEPTION_DURING_EXECUTE</SAP:Code>

<SAP:P1>com/sap/xi/tf/_MM_SIMULATE_ORDER_Req_MOnline_</SAP:P1>

<SAP:P2>com.sap.aii.utilxi.misc.api.BaseRuntimeException:</SAP:P2>

<SAP:P3>The processing instruction target matching "[xX][m</SAP:P3>

<SAP:P4>M][lL]" is not allowed.</SAP:P4>

<SAP:AdditionalText />

<SAP:Stack>Runtime exception occurred during application mapping com/sap/xi/tf/_MM_SIMULATE_ORDER_Req_MOnline_; com.sap.aii.utilxi.misc.api.BaseRuntimeException:The processing instruction target matching &quot;[xX][mM][lL]&quot; is not allowed.</SAP:Stack>

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

</SAP:Error>

*Part of Payload of Change Order:*

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

- <!-- Inbound Message

-->

- <BAPI_SALESORDER_CHANGE xmlns="urn:sap-com:document:sap:rfc:functions" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

<BEHAVE_WHEN_ERROR xmlns="" />

<INT_NUMBER_ASSIGNMENT xmlns="" />

- <ORDER_HEADER_IN xmlns="">

<REQ_DATE_H>2009-11-21</REQ_DATE_H>

<PURCH_NO_C>86572</PURCH_NO_C>

<PRICE_DATE>2009-11-21</PRICE_DATE>

<SHIP_COND>Z4</SHIP_COND>

<SHIP_TYPE>06</SHIP_TYPE>

Please let me know any way to trace out the problem for this, in specific can we trace out the point in PI where call is being made to a Interface in PI by sort of debugging it(Any Debugging option). Also where is the initial entry is being made in PI ABAP/JAVA stack when any interface is triggered.

Please suggest the solution/way to trace out the problem.

Regards,

Nitin Patil

Accepted Solutions (0)

Answers (3)

Answers (3)

neshath_anjum
Explorer
0 Kudos

Hi Nitin

Did you get solution for your issue as i am also facing same kind  issue in my project.

nitinlpatil12
Participant
0 Kudos

Hi Anjum,

I am not quite sure on what has resolved the issue very clearly. However I do remember that we have developed a dummy .net interface within our landscape and it was working fine from .net too. Later on client changed the WSDL definition at their end and it started working.

Also I did couple of steps at my end were,

1. Checked Pipeline steps and found out where exactly it is failing.

2. Testing done using WebService Navigator and SOAP UI

3. Deleted and recreated the entire ID setup in SAP PI.

Check if this helps you and let me know if any issues.

Regards,

Nitin Patil

Former Member
0 Kudos

Can you go to SXMB_MONI or RWB & find the Sender - System, ServiceInterface details. You can find them in SOAP header...

Compare these SOAP Header details with those of the WS-Navigator

I suspect, .net would have consumed wrong service. (or sending wrong SOAP Header details)

Regards,

Siva Maranani

Former Member
0 Kudos

put Logging and Tracing hign level in sxmb_adm, then you check all the pipeline steps in MONI ,

most probably it is error in interface determination ,resolution is inactive the packaging from sxmb_adm.

Former Member
0 Kudos

Hi Experts,

I have checked in Trace messages for failed message and it is failing at the point of Interface Detemination, However same thing works when I am triggering the message through WS Navigator or RWB and it fails (triggers Simulate Order Interface) when triggered from .Net Side for Order Change message.

I have checked ID configuration for Change Order (Interface determination) and it is working fine when I test it through ID test tool.

Regards,

Nitin Patil

former_member181962
Active Contributor
0 Kudos

Hi Nitin,

Can you double check if the .NET application is using teh wsdl that is generated for the sender agreement corresponding to your outbound interface?

May be they are using a wrong URL? Double check if they are using the correct soap URL to send the messages.

Regards,

ravi kanth Talagana