Forum Stats

  • 3,838,654 Users
  • 2,262,389 Discussions


Mediator Error handling using Fault Mgt Framework is not working

Sharmistha Ghosh
Sharmistha Ghosh Member Posts: 121 Blue Ribbon
edited May 9, 2013 3:15AM in SOA Suite Discusssions
Hi All,

I want to handle fault in Mediator using fault Management Framework. I have built one composite which will call a service,which is deployed on server. Later I shut down the web service ,resulting in the error

I have copied the fault-policies.xml and fault-bindings.xml files in the same directory structure of the composite.xml of the project.


<?xml version="1.0" encoding="UTF-8"?>
<faultPolicy version="2.0.1" id="ErrorhandlingApp">
<Condition >
<!-- ======================================================================
Genric Fault Policy framework :Mediator fault
====================================================================== -->
<faultName xmlns:medns=""
<action ref="ora-abort"/>
<!-- ======================================================================
Genric Fault Policy framework : Action
====================================================================== -->
<Action id="ora-abort">


<?xml version="1.0" encoding="UTF-8"?>
<faultPolicyBindings version="2.0.1"
<composite faultPolicy="ErrorhandlingApp"/>

My intention is to catch/handle the fault using fault policies,but my fault -policies.xml is not working.

I followed this documentation :

Any suggestion would be helpful to me.

Thanks in Advance,


  • Anuj Dwivedi--Oracle
    Anuj Dwivedi--Oracle Member Posts: 7,077 Employee

    Please note that -
    Fault policies are applicable to parallel routing rules only. For sequential routing rules, the fault goes back to the caller. It is the responsibility of the caller to handle the fault. If the caller is an adapter, then you can define rejection handlers on the inbound adapter to take care of the messages that error out (that is, the rejected messages). For more information about rejection handlers, see the Oracle Fusion Middleware User's Guide for Technology Adapters.
    If you are using parallel routing rule then make sure that the fault being raised has mediatorErrorCode as "TYPE_FATAL_MESH"

    Anuj Dwivedi--Oracle
  • Sharmistha Ghosh
    Sharmistha Ghosh Member Posts: 121 Blue Ribbon
    Hi Anuj,

    Thanks for the reply.

    As per the oracle document "TYPE_FATAL_MESH: Contains fatal errors from the Service Infrastructure such as Invoke service not available." , that's why when I shut down down the service , the fault policy file should work.
    After changing the routing rule from sequential to parallel, i am facing a different kind of issue. All the faulted instance become "Recoverable" instead of terminated.

    Even i changed my code in fault-policies.xml as :

    <faultName xmlns:medns=""
    <test>$fault.faultCode = "ORAMED-03303")</test>
    <action ref="ora-abort"/>

    It is not working :(

    Fault Message :

    System Fault :
    ORAMED-03303:[Unexpected exception in case execution]Unexpected exception in request response operation "sayHello" on reference "NamePrintService". Possible Fix:Check whether the reference service is properly configured and running or look at exception for analyzing the reason or contact Oracle Support Services. Could not determine wsdl ports.

    This fault can be recovered.To recover, select this fault in the table and choose a recovery action from the recovery panel.

    Thanks in adv,
  • HG
    HG Member Posts: 74
    Even I am facing the same issue.
    It is going to recoverable state instead of getting terminated. In my case i am calling a java class and then terminating it.
    Please update the thread if you find the solution.

    With Regards,
  • HG
    HG Member Posts: 74
    edited May 9, 2013 3:15AM
    There was an issue with the java class i was invoking through fault policy.
    I corrected it and now it is terminating the instance.

    Edited by: Hg on May 9, 2013 12:15 AM
This discussion has been closed.