Fault Handling in Asynchronous process

Hi,
I want to know how to throw fault from an Asynchronous process to the calling process. In a synchronous process we generally throw faults using fault message in 'process' port type. But Im not sure how to throw a fault from Asynchrnous process to the calling process that can be caught in the catch block of the calling process.
Can some one update me with the feasibility of this.
Thanks,

Hi,
Look inside the Oracle® BPEL Process Manager Developer's Guide at http://download-uk.oracle.com/docs/cd/B31017_01/integrate.1013/b28981/faults.htm#BABIBAFC
8.8.2 Returning a Fault in an Asynchronous Interaction
In an asynchronous interaction, the client does not wait for a reply. The reply activity is not used to return a fault. Instead, the BPEL process returns a fault using a callback operation on the same port type that normally receives the requested information, with an invoke activity.
Example
    <portType name="BPELFaultHandling">
        <operation name="initiate">
            <input message="client:BPELFaultHandlingRequestMessage"/>
        </operation>
    </portType>
    <portType name="BPELFaultHandlingCallback">
        <operation name="onResult">
            <input message="client:BPELFaultHandlingResponseMessage"/>
        </operation>
        <operation name="onError">
            <input message="client:BPELFaultHandlingErrorMessage"/>
        </operation>
    </portType>On the caller side you have to use one invoke followed by a pick activity waiting for onResult or onError callback.
Best Regards,
Harald Reinmueller

Similar Messages

  • Fault in initializing asynchronous process

    Hi Guys,
    As many posts and articles suggest, asynchronous process is better because of its flexibility. I am very happy with it until I encounter the following problem.
    We do the fault handling on all of our processes, using both the catch and fault policy framework. For asynchronous process, we use a separate invoke to return the fault. Recently, we noticed a problem. For some reasons, every Sunday when the production BPEL server restarts, there are always a few BPEL process turned retired and off. We've already raised a service request for this on metalink. But this causes another very serious issue:
    The calling BPEL instance sends a request to initiate the asynchronous process . As it is turned off and retired by accident, the initialization fails. However, as it's asynchronous, the calling process is not notified, which means there is no fault raised on the calling process. This causes a lot of trouble because we are not notified with the problem. This has never been a problem because we did not have process turned off and retired before.
    This can be easily verified by a simple test case. Create a synchronous process A and an asynchronous process B. Let A invoke B. Then turn off and retire B. A instance can still be executed successfully without saying the problem calling B. If B is a synchronous process, A will always report a fault in such situation.
    Of course, the domain log file records this ORABPEL-02106 problem. but we don't want to check log file all the time and want to be notified when it happens. Is there a way to catch such exception/fault in the calling process?
    Thanks in advance!!!
    Steven
    Edited by: sw12345 on Jul 26, 2010 9:41 AM

    HI Sridhar,
    Thanks for you advice. I think I will do the following:
    1. I will still keep all process as asynchronous with the deliveryPersistPolicy as default.
    2. I will add a cron job to scan the server whenever it restarts to detect any default version of BPEL process with a retire or off status. If there are, I'll correct them.
    3. I will implement the program to re-submit the failed invoke. But I cannot make it an alert program because I cannot get detail fault through IInvokeHandle (Please correct me if I am wrong).
    By the way the defect of the "ClassCastException" is fixed in 10.1.3.5, I guess that can upgrade that too :-)
    Thanks,
    Steven

  • Fault Handling in BPEL process

    hi
    We have to develop an application which involves several BPEL processes and proxy service(OSB) and JMS queue etc.
    What is the difference between Fault Management Framework in SOA11g and normal fault handling(using catch and throw activities)?
    which one we should prefer for fault handling in our application n why?
    Plz help thanks in advance.

    Hi-
    In Normal Fault handling process, you will be able to catch the faluts only but in Fault Management Framework if a fault occurs the framework catches the fault and performs a user-specified action defined in a fault policy file associated with the activity. You can also have a human intervention prescribed in it, where you perform recovery actions from Enterprise Manager.
    Pls go throgh the below post for detailed description
    http://download.oracle.com/docs/cd/E12839_01/integration.1111/e10224/bp_faults.htm
    Fault Management Framework and non BPEL soap faults
    Edited by: 333333 on Mar 23, 2011 5:01 PM

  • Fault handling in sync process

    Hi,
    In my synchronous BPEL process I have a parallel flow with 3 parallel calls to web services,
    I want to add a fault catch if one of the services is not responding.
    So that if I got a response from 2 of the web services, but the third one is down, I can continue the process and assign something instead of the 3rd ones output.
    How can I do this ?
    Thanks!

    -Catch may be used if you know what exceptions are being thrown by the web service.
    -One of the worst (:)) things can be if the web service is down, so you should put that logic in the catchall.
    -Under the logs .... bpel/opmn/logs/*bpel* log. This is the log where you can see whats happening in the BPEL process. And if some error occured while invoking the web service.

  • Handling Faults in asynchronous process SOA11G

    I could implement RuntimeFault.wsdl in synchronous process, but I cannot to do the smae in asynchronous process.
    What is the difference in implementing it.
    I want to handle wsdl (partner link) fault in during invoke activity. But when I add this
    <wsdl:fault name="ImportOrderStatusFault" message="ns1:RuntimeFaultMessage"/>
    in my bpel process wsdl I get error, wsdl not expected.
    Also, when I use bpel:remoteFault, bpel:bindingFault or catchAll ,and use reply activity to client, I get error in reply activity.
    Also, in asynchronous process, i cannot use throw activity. Now, if source system invokes my bpel asynchronous process, and there is WSDL Fault in Partner Link. Would source know that there is an exception ?
    Thanks

    in your async process you have something like
        <portType name="getEmployee">
            <operation name="initiate">
                <input message="client:EmployeeRequestMessage"/>
            </operation>
        </portType>
        <portType name="getEmployeeCallback">
            <operation name="onResult">
                <input message="client:EmployeeResponseMessage"/>
            </operation>
           <operation name="onError">
             <input message="client:yourErrorMessage"/>
           </operation>
        </portType>in your bpel you catch the error and in the catch handler you do the invoke back just like you do the callback in your normal flow, only this time you call onError instead of onResult
    Or if you don't want the use a seperate callback (onError) you could still use the onResult in the catch handler, but before the invoke you need to construct the message you want to reply and assign that to lets say the outputVariable (if this is the one used by the callback in the error catch handler)

  • Fault handling policy for a process in the fault-binding.xml

    Can I specify a fault handling policy for a specific process using fault handling framework 10.1.3.3?
    <process faultPolicy="DefaultPolicy"/>
    I cannot specify the name of the process according to the xsd :(
    Can this be achieved?
    I have a two different partner links in different processes having the same name. If I add the partner link to the fault-binding.xml what would be the result?
    Note: I cannot use bpel.xml to specify the fault policies as of now.

    The fault policy bindings file does not allow you to specify a specific fault policy for an individual processes. You can only do this for all BPEL processes (eg: process Level) or at finer grained levels such as partner link levels.
    You might be able to use the partner link level for any services that call the process in which you wnat to error handle (eg: Process C needs to be error handled. Process A and B call C so for the partner link names for invoking C could have the fault policy defined for them). Therefore any faults returned from C could propagate back to process A / B and be handled within by the policy outside of Process C. Obviously if this apporach was used you would not want to use process level definitions as C would continue to use this.
    If the partner links were of the same name, they should both be handled by the fault policy that is defined withiin the Fault policy (e.g Partner Link level definitions)
    An approach that can be used is to specify the fault policy within the bpel.xml file. The information would be added as follows:
    </partnerLinkBindings>
    <!-- Start of Definition-->
    <faultPolicyBindings>
    <process faultPolicy="AProcessFaultPolicy"/>
    <partnerLink faultPolicy="APartnerLinnkPolicy">
    <name>insertSSN_dbAdapter</name>
    <name>Another_Adapter</name>
    </partnerLink>
    </faultPolicyBindings>
    <!-- End of Definition -->
    </BPELProcess>
    </BPELSuitcase>
    However, I noted you said you were unable to do this. I wasn't sure if this was for technical/governamce reasons or knowledge reasons (unsure where to place to the details.
    Hope that helps and does not confuse matters
    Dave

  • Throwing a fault from an asynchronous bpel process

    Hi,
    can anyone please let me know how i can throw a fault to the calling client from an asynchronous bpel process?
    (synchronous bpel uses the fault of the reply activity to do the same - i want a similar thing in a callback-invoke of an asynchronous process or any other way to do it if at all)
    please let me know if it is possible becoz it was a requirement put forward by a customer and i just want to develop a proof of concept to the same.
    regards,
    pavan.

    Hi,
    I'm using BPEL process manager for calling a asynchronous web service,I can invoke the service from BPEL and the service is invoked correctly,but when I view the business process flow in BPEL Console my process is stopped at receive state and doesn't pass it.
    Could anybody tell me if any thing should be set to receive a callback from an asynchronous web service to BPEL process?
    Is it true that BPEL process receives a callback automatically (using a callback operation which I defined in my web service WSDL) on the same port type that normally receives the requested information, with an invoke activity?
    So what could be wrong with my process or invoked web service that the BPEL process doesn't get any reply from my web service and remains in receive activity?
    Thnx in advance,
    Nasim

  • Clarification needed in the Fault Handling Framework(Error Hospital)

    Hi,
    I need some clarification on Fault Handling Framework...
    Scenario:
    My BPEL Process is Asynchronous.(10.1.3.3.1) and I tryed to invoke the another BPEL Process( which is used to select the Fname from the table using DB Adapter) . In the Main BPEL Process I have the Fault handling Framework and I done necessary changes in the bpel.xml. This is successfully working for Invoke Activity when ever an Remote or Binding Fault occurs in the Sub-BPEL Process and this Fault is send to Fault-Policy.xml in the server(bpel/domains/default/config/fault-Policy) and works accordingly to the action mentioned in the policy xml....( I have also made changes in the fault-bindings.xml ).
    How ever this Framework is working fine for every actions.
    Need Clarification:
    1) Only the Binding and Remote faults will work for the Fault handling Framework.
    2) can we use User defined faults (Buissness Faults,,,) for this........because I used the User defined faults to invoke the fault-policy.xml and it won't works....
    3)Only Invoke Activity can be handled for this Framework or any Other Activity........
    4)How to handle other Activity in the Fault-policy.xml...
    5)Any difference for Asynchronous or Synchronous in this Fault Handling Framework.......
    I also referred the Oracle SOA Suite New Feauters PDF .......
    Can any one send me the related documents and try to help me on this.
    Please help me on this.......
    Thanks,
    Ashok.

    Hi Chintan,
    You are saying that Custom faults are also supported for fault-Policy.xml.
    I can't understand that 2nd answer you said. can you please explain how to use the Custom faults in the FaultHandlingFramework..
    My Scenario:
    I have 2 BPEL Process, BPEL1 will invoke the BPEL2 and if any remote fault or binding faults occurs in the BPEL 2 its returning the same fault to BPEL1 and here I am using FaulthandlingFramework , this fault send to fault-policy.xml and necessary action is took place succesfuly...(like retry, human intervention.....)
    But when I throw some CustomFaults(userdefinedFaults)in the BPEL2 , its returning as a remotefault to BPEL1. I don't know how to use the customFaults in the Fault handling framework.......
    Can you explain me in detail how to use custom faults in faulthandling framework...............
    Send me some related documents for this.....

  • Fault message in asynchronous ABAP Proxy

    Hi,
    I have a question about fault messages in asynchronous ABAP proxy server.
    The configured scenario is SOAP – XI – ABAP Proxy. Between XI and the ABAP Proxy I have configured an inbound asynchronous interface with a fault message, and then I have generated all the classes and implemented some code for exception handling in the ABAP Proxy side successfully.
    When I tested negative cases, the exception raises and it is visible in the SXMB_MONI transaction in the R/3 side, but this exception is not displayed in the SXMB_MONI of XI it just displays a successful delivery to the ABAP Proxy message.
    According the XI documentation it says “<i>In the asynchronous case, you can see a fault message in the monitoring of the Exchange Infrastructure.</i>” But this is not working.
    Am I missing something?

    Hi,
    This parameters are form group RUNTIME.
    Please check it:
    http://help.sap.com/saphelp_nw04/helpdata/en/d6/49543b1e49bc1fe10000000a114084/content.htm
    Regards,
    Wojciech

  • Fault Message in Asynchronous

    Dear Friends,
          In Message interface there is a option to select synchronous or asynchronous. If we select synchronous the fault message appearing and if select assynchronous the fault message disappearing, then in this case how can we do fault handling.
    Thanks
    Prem

    hi
    A fault message is a message that describes an application-specific error situation.
    Fault message types are designed for application-specific errors that occur on the inbound side and that are reported back to the sender or persisted in monitoring.
    · In the synchronous case, when an application-specific error occurs on the inbound side, instead of sending a response message back to the sender, the application can send a fault message to handle the error.
    · The fault message of the application for an asynchronous ABAP server proxy is persisted for monitoring. In the case asynchronous of Java server proxies, the fault message is part of a negative application acknowledgement (see Acknowledgments).
    Application-specific means that the application on the inbound side triggers the error itself because, for example, the request message did not contain sufficient information.
    http://help.sap.com/saphelp_nw04/helpdata/en/dd/b7623c6369f454e10000000a114084/content.htm

  • Error Handling Inside BPM Process

    Hi All,
    I have a scenario in which, when a BPM Process errors out due to any of the System Exception I'm catching it using a Event SubProcess activity and handling it.
    Problem:
    I want the control to get back to the next activity i.e Normal Process should resume once the control is out of the Event SubProcess.
    I found that using a Normal Subprocess with boundary event helps to resume the flow back to normal control. But Its difficult to have individual Subprocesses for N number of activities.
    Is there any other method to overcome this?
    Please provide a solution.
    Two Cents,
    Karthick.

    I'll bow out of this thread after this post, but a couple thoughts.
    You might have seen these, but here are some links that should help you. If you have not already looked at Fault Policies, pay particular attention to this in the posts below:
    Fault Handling in Oracle SOA Suite
    http://beatechnologies.wordpress.com/2011/07/18/fault-handling-in-oracle-soa-suite-advanced-concepts/
    Fault Handling and Prevention - Part 1
    http://www.oracle.com/technetwork/articles/soa/luttikhuizen-fault-handling-1-1877036.html
    Fault Policy
    http://error0.wordpress.com/2011/08/02/howto-use-the-fault-management-framework-with-oracle-bpm/
    I don't mean for this to sound harsh and please keep in mind that I don't know the problem you're trying to solve or what you're process looks like.
    >
    Yes we do, but we have many activities inside a single process since the business is big.
    >
    Sounds like you're pretty far down the road now, but just a word of caution. I've found myself on projects with large processes. It's not just exception handling that you'll find more difficult, but many things became more cumbersome to maintain in a large process.
    >
    A thought of using Boundary Events with subprocess looks good but its not possible to use a single sub process for all boundary events in order to resume to normal activity.
    >
    I did not follow this. If you invoke a subprocess using a Call activity, you'd be able to add a boundary event on the Call activities for the activities in the called sub process. You'd also have a process that is easier to read and maintain.
    Dan

  • Fault handling for Mediator component

    I am trying to capture all the system and business faults of the composite and email the details to system groups. I am having issues with the fault policy file and get the following error. My Composite is made up of Web Services ---> Mediator ---->DBAdapter
    INFO: FaultPoliciesParser.parsePolicies ------->Begin Parsing of policy file
    <Jun 18, 2012 3:48:58 PM EST> <Error> <oracle.soa.mediator.common.error.recovery> <BEA-000000> <Failed to recover the mediator fault.
    oracle.fabric.common.FabricException: Missing fault policy: TESTFaultPolicy
    at oracle.integration.platform.faultpolicy.RecoverFault.resolveToActionRef(RecoverFault.java:101)
    at oracle.integration.platform.faultpolicy.FaultRecoveryManagerImpl.resolveToActionRef(FaultRecoveryManagerImpl.java:151)
    at oracle.tip.mediator.common.error.recovery.MediatorRecoveryHandler.resolveToActionRef(MediatorRecoveryHandler.java:158)
    at oracle.tip.mediator.common.error.ErrorMessageEnqueuer.enqueue(ErrorMessageEnqueuer.java:174)
    at oracle.tip.mediator.dispatch.db.DeferredDBWorker.handleError(DeferredDBWorker.java:117)
    at oracle.tip.mediator.common.listener.DBWorker.process(DBWorker.java:114)
    at oracle.tip.mediator.common.listener.AbstractWorker.run(AbstractWorker.java:83)
    at oracle.integration.platform.blocks.executor.WorkManagerExecutor$1.run(WorkManagerExecutor.java:120)
    at weblogic.work.j2ee.J2EEWorkManager$WorkWithListener.run(J2EEWorkManager.java:183)
    at weblogic.work.DaemonWorkThread.run(DaemonWorkThread.java:30)
    I am attaching the following files
    FAULT-POLICIES.XML*
    <?xml version="1.0" encoding="UTF-8"?>
    <faultPolicies xmlns="http://schemas.oracle.com/bpel/faultpolicy"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
    <faultPolicy version="2.0.1" id="TESTFaultPolicy">
    <Conditions>
    <faultName>
    <condition>
    <action ref="ora-java"/>
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id="ora-java">
    <javaAction className="test.EmailFaultHandler"
    defaultAction="ora-human-intervention">
    </javaAction>
    </Action>
    </Actions>
    </faultPolicy>
    </faultPolicies>
    FAULT-BINDINGS.XML_
    <?xml version="1.0" encoding="UTF-8"?>
    <faultPolicyBindings version="2.0.1"
    xmlns="http://schemas.oracle.com/bpel/faultpolicy">
    <composite faultPolicy="TESTFaultPolicy"/>
    <component faultPolicy=" TESTFaultPolicy">
    <name>HandleRealTimeRequests</name>
    </component>
    </faultPolicyBindings>
    I am yet to figure out how to capture the fault and email to the groups in EmailFaultHandler.java file below
    EmailFaultHandler.java_
    package test;
    import com.collaxa.cube.engine.fp.BPELFaultRecoveryContextImpl;
    import java.util.Map;
    import oracle.integration.platform.faultpolicy.IFaultRecoveryContext;
    import oracle.integration.platform.faultpolicy.IFaultRecoveryJavaClass;
    public class EmailFaultHandler implements IFaultRecoveryJavaClass {
    public void handleRetrySuccess(IFaultRecoveryContext iFaultRecoveryContext) {
    public String handleFault(IFaultRecoveryContext iFaultRecoveryContext) {
    //Print Fault Meta Data to Console
    System.out.println("****************Fault Metadata********************************");
    System.out.println("Fault policy id: " + iFaultRecoveryContext.getPolicyId());
    System.out.println("Fault type: " + iFaultRecoveryContext.getType());
    System.out.println("Partnerlink: " + iFaultRecoveryContext.getReferenceName());
    System.out.println("Port type: " + iFaultRecoveryContext.getPortType());
    System.out.println("**************************************************************");
    //print all properties defined in the fault-policy file
    System.out.println("Properties Set for the Fault");
    Map props = iFaultRecoveryContext.getProperties();
    for (Object key: props.keySet())
    System.out.println("Key : " + key.toString() + " Value : " + props.get(key).toString());
    //Custom Code to Log Fault to File/DB/JMS or send Emails etc.
    return "Manual";
    Please suggest
    Thanks
    Edited by: user5108636 on 18/06/2012 00:20
    Edited by: user5108636 on 18/06/2012 00:20

    By the way, I managed to break through a little further. Now I am past this fault policy error. However, the java fault handler class is giving ClassNotFoundException. The way I added the java file (test.EmailFaultHandler) through JDeveloper in the composite project (Right click --> New ---> Java file). How do I add this to the classpath. I thought it automatically gets added to the SOA composite project classpath.
    Please suggest.
    INFO: FaultPoliciesParser.parsePolicies ------->Begin Parsing of policy file
    <Jun 19, 2012 10:58:01 AM EST> <Warning> <oracle.soa.mediator.monitor> <BEA-000000> <Venkat:Inside Synchronized block with msg id :CCA40B60B9A911E1BF115F9190ABA14C>
    <Jun 19, 2012 10:58:01 AM EST> <Warning> <oracle.soa.mediator.monitor> <BEA-000000> <Venkat:Inside Synchronized block with msg id :CCA40B60B9A911E1BF115F9190ABA14C>
    <Jun 19, 2012 10:58:01 AM EST> <Warning> <oracle.soa.mediator.monitor> <BEA-000000> <Venkat:Inside Synchronized block with msg id :CCA40B60B9A911E1BF115F9190ABA14C>
    <Jun 19, 2012 10:58:01 AM EST> <Error> <oracle.soa.mediator.common.listener> <BEA-000000> <Enququeing to Error hospital successful...>
    <Jun 19, 2012 10:58:05 AM EST> <Error> <oracle.soa.mediator.common.error.recovery> <BEA-000000> <Error while loading "test.EmailFaultHandler" java class specified for action "ora-java".>
    <Jun 19, 2012 10:58:05 AM EST> <Error> <oracle.soa.mediator.common.error.recovery> <BEA-000000> <Failed to recover the mediator fault.
    java.lang.ClassNotFoundException: test.EmailFaultHandler
    at weblogic.utils.classloaders.GenericClassLoader.findLocalClass(GenericClassLoader.java:297)
    at weblogic.utils.classloaders.GenericClassLoader.findClass(GenericClassLoader.java:270)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.findClass(ChangeAwareClassLoader.java:64)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
    at weblogic.utils.classloaders.GenericClassLoader.loadClass(GenericClassLoader.java:179)
    at weblogic.utils.classloaders.ChangeAwareClassLoader.loadClass(ChangeAwareClassLoader.java:43)
    at oracle.tip.mediator.common.error.recovery.CustomJavaHandler.execute(CustomJavaHandler.java:69)
    at oracle.tip.mediator.common.error.recovery.MediatorRecoverFault.recover(MediatorRecoverFault.java:73)
    at oracle.tip.mediator.serviceEngine.MediatorFacadeService.recoverFault(MediatorFacadeService.java:988)
    at oracle.integration.platform.faultpolicy.RecoverFault.recoverAndChain(RecoverFault.java:161)
    at oracle.integration.platform.faultpolicy.RecoverFault.resolveAndRecover(RecoverFault.java:124)
    at oracle.integration.platform.faultpolicy.FaultRecoveryManagerImpl.resolveAndRecover(FaultRecoveryManagerImpl.java:123)
    at oracle.tip.mediator.common.error.recovery.MediatorRecoveryHandler.recover(MediatorRecoveryHandler.java:116)
    at oracle.tip.mediator.common.error.ErrorDBWorker.handleMessage(ErrorDBWorker.java:37)
    Thanks

  • Fault Handling in BPEL

    Hi,
    Can anyone explain me how do I handle the faults in my BPEL process. What I want to do is whenever any Faults occur in my Invoke activity I want to capture the error messages and send an email to myself with the error messages. Appreciate if anyone can help me out here with the design process. I'm new to BPEL and if there is any step by step design document it would really help me.
    Thanks
    -Prapoorna

    Please read
    http://download.oracle.com/docs/cd/B31017_01/integrate.1013/b28981/faults.htm#sthref1186

  • Fault Handling in Mediator

    Hi,
    We have a DBAdpater to retrieve the data and a mediator to invoke the DBAdapter. In cases like No Records we want to create a soap fault. So we implemented Mediator Java callout and overriden postRouting() to read the response message and create a soapfault.
    [ we referred to blog http://technology.amis.nl/blog/6669/soa-suite-11g-introducing-mediator-java-callouts-for-debug-audit-and]
    but when we tried creating SOAPFault and add it to the response message, while execution , the response message is being parsed and seeing the fault it is throwing the exception below:
    java.lang.Exception: oracle.sysman.emSDK.webservices.wsdlapi.SoapTestException:
    This is a fault.
    at oracle.sysman.emas.model.wsmgt.WSTestModel.invokeOperation(WSTestMode
    l.java:575)
    at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:381)
    at oracle.sysman.emas.view.wsmgt.WSView.invokeOperation(WSView.java:298)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
    at java.lang.reflect.Method.invoke(Method.java:597)
    at com.sun.el.parser.AstValue.invoke(AstValue.java:157)
    at com.sun.el.MethodExpressionImpl.invoke(MethodExpressionImpl.java:283)
    at org.apache.myfaces.trinidadinternal.taglib.util.MethodExpressionMetho
    dBinding.invoke(MethodExpressionMethodBinding.java:53)
    at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMet
    hodBinding(UIXComponentBase.java:1259)
    at org.apache.myfaces.trinidad.component.UIXCommand.broadcast(UIXCommand
    .java:183)
    I found that if exception from mediator is not handled, then the exception is throw as system fault as shown above.
    So we tried implementing external fault handling - by creating fault-policies.xml and fault-bindings.xml and a java callout.
    fault-bindings.xml
    <?xml version=”1.0" encoding=”UTF-8"?>
    <faultPolicyBindings version=”2.0.1" xmlns=”http://schemas.oracle.com/bpel/faultpolicy”>
    <composite faultPolicy=”SOM_ServiceFaults”/>
    </faultPolicyBindings>
    fault-policies.xml
    <?xml version="1.0" encoding="UTF-8"?>
    <faultPolicies>
    <faultPolicy version="2.0.1" id="SOM_ServiceFaults">
    <Conditions>
    <faultName xmlns:env="http://schemas.xmlsoap.org/soap/envelope/" name="env:Fault"> <!-- Qname of Business/SOAP fault -->
    <condition>
         <action ref="ora-custom"/>
    </condition>
    </faultName>
    <faultName xmlns:medns="http://schemas.oracle.com/mediator/faults" name="medns:mediatorFault">
    <condition>
    <action ref="ora-custom"/>
    </condition>
    </faultName>
    </Conditions>
    <Actions>
    <Action id=”ora-terminate”>
              <abort/>
         </Action>
    <Action id="ora-custom">
    <javaAction className="gm.som.FaultPolicyJavaAction" defaultAction="ora-terminate">
    <returnValue value="ora-terminate" ref="ora-terminate"/>
    </javaAction>
    </Action>
    </Actions>
    </faultPolicy>
    </faultPolicies>
    But still getting the error.Appreciate any help on this.
    Thanks in Advance,
    Subhashini

    Not exactly but doing it the other way around by copying the fault msg to output variable and check flag for the response in my initial requester process then throw fault accordingly.. didnt have much time as it was holding back my other deliverables
    Thanks a lot for your time

  • Fault handling in osb using publish

    Hi all,
    i am new to OSB, every thing is working fine. i will explain how we design the basically we have inbound and outbound. call inbound as 'aaaa' and outbound as "bbbb". we have created the proxy and BS which will communicate with EBS, BAM and B2B. i have created BS for all the three. from PS i used 2 assign and 1 publish activity. we are publishing directly to BS correspondingly. since i am not using any route activity i could not get the error back or any invocation error messages. can any one tell how to capture the error and place it into BAM report. we can transform data to BAM we just need to get the details about the fault handling in OSB.
    thanks ----

    Hi prabu,
    thanks for your response.
    As we have the discussion on this issue for quit a long time. i have configure the error handler in the proxy services when my EBS throws the error. error handler come active and some data is published to bam. here i got the problem is that, the PO which we are sending is one way or fire and forget when using Publish action. when the PO hit the EBS, i.e. when error message is passed through the test XML, error is occuring and and reporting to bam with some null values. i need to capture the data processed at that transaction. is it possible to capture the data in error handler which is errored out in message flow of PS.
    can you please help me
    thanks--
    anil

Maybe you are looking for

  • IPod won't sync purchased music...

    I'm using the 5th generation ipod nano...which I haven't used in a while due to getting a touch screen. Now that I'm trying to use it again... it won't sync anything I've bought on itunes, because of some 'error' ... I don't know how to fix it at thi

  • Upgrades USB hub to USB 2.0

    i've recently purchased eyetv for my emac. everything seems fine apart from that it won't allow me to go any further after my computer tells me it does not support a USB 2.0. The only ways I can see around this (if possible) are to get an external US

  • Problem with exchange network slot

    Hi all, I had remove my network card X1034A from slot 2 to slot 5,then the solaris 9 can see it with prtdiag,but then did not work now. and I can see the system keep the qfe0 qfe1 qfe2 qfe3 and search the network card to qfe4 qfe5 qfe6 qfe7. so ,how

  • Problem with LR5.2 upgrade

    After upgrading from LR5 to LR5.2 none of my nef and dng files are supported, any clue?

  • How to get the camera shutter sound off on iphone 6?

    Since iPhone 6, I can't get the camera shutter sound off by switching the silent button off. There are no setting options available either? I bought my phone in Japan. May be it is a local requirement. Does any one know how to change this?