cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP Capture ((SOAP:FAULT))

Former Member
0 Kudos

Hello

Since SAP XI am consuming a web service NET. If this service has errors send a SOAP FAULT.

How it catches on SAP XI this message?

Accepted Solutions (0)

Answers (1)

Answers (1)

VijayKonam
Active Contributor
0 Kudos

Hi, If you web service is synchronous and when you import the WSDL in to XI, in the interface mapping you should find three tabs - Request, Response and FAULT. The last one is the tab you should used to capture this error. You have to create the Falut Message types in Xi using the Fault message data types created automatically under the name space. Then map these to any Message type that you would want to using a separate mapping program and send them to the caller.

VJ

Former Member
0 Kudos

Hello.

The interface is synchronous.

In XI (SXI_MONITOR) the message response is:

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

- <!-- Request Message Mapping

-->

- <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 FFF3F9236B94360882DC00201E820C4B Software Component 59495DE0A1C211DCAEE8C51A0A0000F5</SAP:P1>

<SAP:P2 />

<SAP:P3 />

<SAP:P4 />

<SAP:AdditionalText />

<SAP:ApplicationFaultMessage namespace="" />

<SAP:Stack>Interface mapping Object ID FFF3F9236B94360882DC00201E820C4B Software Component 59495DE0A1C211DCAEE8C51A0A0000F5 does not exist in runtime cache</SAP:Stack>

<SAP:Retry>N</SAP:Retry>

</SAP:Error>

VijayKonam
Active Contributor
0 Kudos

That I understand Claudio,

You have to make changes and create more objects in your repository to achieve what you want.

VJ

Former Member
VijayKonam
Active Contributor
0 Kudos

Thats cool. I think mapping the FAULT MT to some other MT which your sender application is expecting would be good, so that you can send it to them. This means, change the mapping for the fault message such thet the target is some thing the sender application expects.

VJ

Former Member
0 Kudos

UPDATE Website. More information.

The requirement is to manage information in XI.

Former Member
0 Kudos

Solve problem.

I still can not solve this problem.

I have included the field to WSDL and SOAP FAULT yet so I can not get this information.

<wsdl:fault name="SolicitarOrdenPagoFault"/>

<s:schema elementFormDefault="qualified" targetNamespace="http://LarrainVial.WebServices.SAP2LV/Tesoreria">

<s:complexType name="WSSAP2LVSOAPFaultType">

<s:sequence>

<s:element name="faultcode" type="s:string"/>

<s:element name="faultstring" type="s:string"/>

<s:element name="faultactor" type="s:string"/>

<s:element name="detail">

<s:complexType>

<s:sequence>

<s:element name="message" type="s:string"/>

<s:element name="description" type="s:string"/>

</s:sequence>

</s:complexType>

</s:element>

</s:sequence>

</s:complexType>

</s:schema>

Edited by: Claudio Enrique León Hernández on Jan 30, 2008 11:10 PM

I still can not solve this problem.

I have included the field to WSDL and SOAP FAULT yet so I can not get this information.

Edited by: Claudio Enrique León Hernández on Sep 8, 2008 9:20 PM

Edited by: Claudio Enrique León Hernández on Sep 8, 2008 9:20 PM

Former Member
0 Kudos

Solve my problem