cancel
Showing results for 
Search instead for 
Did you mean: 

SOAP fault - is it possible to capture this ?

Former Member
0 Kudos

Hi,

I am using the SOAP adapter as a receiver and in certain circumstances, I get a SOAP fault returned.

For example :

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

- <!-- Call Adapter

-->

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

<faultcode xmlns:t="null">t:Client.Authentication</faultcode>

<faultstring>[Security:090304]Authentication Failed: User ESAP-CRM javax.security.auth.login.FailedLoginException: [Security:090302]Authentication Failed: User ESAP-CRM denied</faultstring>

</SOAP:Fault>

Is it possible to define this as a message and interpret it correctly in XI ?

If so, how does the message need to be defined and does any mapping need to be done ?

Cheers

Colin.

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hi,

Yes you can handle this.

The wsdl you are using, would also have a login fault operation/message(or just a generic fault handling message) in it.

All you need to do is to use this fault message in:

1. Inbound synchronous interface (of the receiver)

2. Outbound synchronous interface (of the sender)

In the interface mapping, you would need to add a message mapping for faults, in addition to request and response mappings.

Regards,

Smitha.

Former Member
0 Kudos

> Hi,

>

> Yes you can handle this.

> The wsdl you are using, would also have a login fault

> operation/message(or just a generic fault handling

> message) in it.

> All you need to do is to use this fault message in:

> 1. Inbound synchronous interface (of the receiver)

> 2. Outbound synchronous interface (of the sender)

>

> In the interface mapping, you would need to add a

> message mapping for faults, in addition to request

> and response mappings.

>

> Regards,

> Smitha.

Hi Smitha,

I have exactly the same problem like Colin. I get a server exception from an external web service but I can't catch them correctly. The server exception looks like this:

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

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

<soap:Body>

<soap:Fault>

<faultcode>soap:Server</faultcode>

<faultstring>error description </faultstring>

<faultactor>ws user account</faultactor>

<detail>

<ServerExceptions>bla bla bla</ServerExceptions>

<faultstring>error description </faultstring>

</detail>

</soap:Fault>

</soap:Body>

</soap:Envelope>

I use a XML Spy Proxy to get this message. When I use the Runtime Workbench or XI Monitoring to analyse such messages I found only the "<ServerExceptions>bla bla bla</ServerExceptions>" node In the payload. So I can only deal with this part of the web service exception message. See my own thread:

Unfortunately the part contains only useless information. I need the content of one of the other nodes. I've no idea how I can get this. The given WSDL doesn't contain fault type definitions. Adding this by my self hasn't changed anything.

How can I get all the information from the web service exception message?????

Former Member
0 Kudos

Hi,

You do not understand my question.

I want to capture any SOAP faults from this interface - I'm just using this one as an example. I have entered the incorrect username on purpose to generate the SOAP fault.

Kind regards

Colin.

Former Member
0 Kudos

Colin,

You can capture the fault messages. Go through this weblog:

/people/shabarish.vijayakumar/blog/2006/11/02/fault-message-types--a-demo-part-1

Check this help also:

http://help.sap.com/saphelp_nw04/helpdata/en/dd/b7623c6369f454e10000000a114084/content.htm

---Satish

Former Member
0 Kudos

Colin,

I think you dont have necessary permissions for the user id? Try by using the XIISUSER user id and pwd.

If your scenario is asynchronous then you will not have a return message. If you want to have a fault message or the response message then you should have synchronous communicaiton and the response message and its message should be specified. But I think in your scenario it says only about the authorizations.

---Satish

Former Member
0 Kudos

Hi,

This fault message is nothing to do with the mapping, you meight have given wrong user name or password .... otherwise the username or password which you have provided in the config does not have authorization to access that business system...

try to check it

Amaresh