cancel
Showing results for 
Search instead for 
Did you mean: 

handling web service error in BPM

Former Member
0 Kudos

My scenario is get a message from a data base and call web service using that, if web service is available get the response from web service and send it back to data base, incase web service call is unavailable.

When web service is unavilable Iam getting a fault message back and could not proceed. I have a seperate blco to do web service call, in that I have Synchronous send step in BPM, and selected default system error under Exception.

My requirment is when SOAP fault occurs I need to send the data back to data base else proceed if web service call is sucessful.

Accepted Solutions (0)

Answers (2)

Answers (2)

former_member200962
Active Contributor
0 Kudos

Almost similar question is raised here:

Check Stefan's reply.

Former Member
0 Kudos

Looks like we can not handle fault messages in BPM.

Before I close this thread. just wanted to give little more explanation reg. my scenario.

Business scenario - Pull the data from Data base using a Stroed Procedure(this marks the records once it is successful) and call web service using this data. If web service call is success, push the response received from web service to Data Base. If call to web service fails, still push the data which was pulled initially from database back to same location in database.

Iam using BPM to get the message from Data Base using JDBC sender adapter, once I got the data Asynchronously into BPM Iam using Synchronous send step to call web service, in the properties section, I have specified request message (abstract asynchronous, ) response message (abstract asynchronous) , Receive from - SendContext and selected default option which is ExWebserviceCall for SystemError.

I have an exception branch for this synchronous send step, which is working good incase of system error.

This is working good when I tried to testing using invalid URL for target system. When web service itself is down , in this case Iam getting SOAP Fault back with HTTP code 500.

In SXMB_MONI, under error - it is showing as this error is related to application , which I think is application error.

When this happens my process is not working.

Edited by: Vamsi on Aug 26, 2010 4:31 PM

Former Member
0 Kudos

Try axis protocol...you can capture the fault, but don't know if you can interpret it properly...try it...

Thanks,

Srini

henrique_pinto
Active Contributor
0 Kudos

Of course you can handle fault messages in BPM.

I mean, you can't use the content of the fault message, since you can't define a container for the fault message (there is not fault message in an abstract interface, that is) what you can do is trigger an exception branch within a block step if you receive a fault message back from your receiver interface.

BR,

Henrique.

Former Member
0 Kudos

Thank You for your valuable replies.

I have already mentioned that I have an exception branch for this synchronous send step, which is working good incase of system error.

synchronous send step is defined with in a block and I have an exception branch for this block.

Since I selected default option which is ExWebserviceCall for SystemError, I got to tell the exception branch to get triggered when ExWebserviceCall is recieved. It is doing that because I got system error.

Incase of application error, it means Iam able to connect to the target system but webservice down. In this case Iam getting application error and my process is getting hard stop.

Shabarish_Nair
Active Contributor
0 Kudos

ref: /people/jin.shin/blog/2007/05/21/handling-web-service-soap-fault-responses-in-sap-netweaver-xi

Former Member
0 Kudos

Thank You for qucik reply.

But Iam looking at handling application error when Iam using BPM.

As I said earlier, Iam using BPM to get the message from Data Base using JDBC sneder adapter, once I got the data using Asynchronously into BPM Iam using Synchronous send step to call web service, in the properties section, I have specfifed request message, response message, SendContext and selected default option which is ExWebserviceCall for SystemError.

This is working good when I tried to testing using invalid URL for target system, when web service itself is down , in this case case Iam getting SOAP Fault back with HTTP code 500, In SXMB_MONI, under error - it is showing as this error is related to application , which I think is application error.

When this happens my process is not working.

Please shar your thoughts.