Business Faults
* Application specific faults.
* Thrown or rethrown by application.
* Specified in WSDL.
* Can be caught with:
<catch faultName="ns1:faultName" faultVariable="varName">
Runtime Faults
* System errors (thrown by system).* messageType:
<?xml version="1.0" encoding="UTF-8" ?> <definitions name="RuntimeFault" targetNamespace="http://schemas.oracle.com/bpel/extension" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://schemas.xmlsoap.org/wsdl/"> <message name="RuntimeFaultMessage"> <part name="code" type="xsd:string" /> <part name="summary" type="xsd:string" /> <part name="detail" type="xsd:string" /> </message> </definitions>* Examples:
- bindingFault
- remoteFault
- replayFault
BPEL Standard Faults
BPEL 1.1 Standard Faults
* Standard faults are defined as follows:- Typeless, meaning they do not have associated messageTypes
- Not associated with any Web Services Description Language (WSDL) message
- Caught without a fault variable:
<catch faultName="bpws:selectionFailure">
* Name space: http://schemas.xmlsoap.org/ws/2003/03/business-process/* Standard faults:
- bindingFault (BPEL extension fault defined in http://schemas.oracle.com/bpel/extension)
- conflictingReceive
- conflictingRequest
- correlationViolation
- forcedTermination
- invalidReply
- joinFailure
- mismatchedAssignmentFailure
- remoteFault (BPEL extension fault defined in http://schemas.oracle.com/bpel/extension)
- repeatedCompensation
- selectionFailure
- uninitializedVariable
BPEL 2.0 Standard Faults
* See spec appendix A.* Namespace is: http://docs.oasis-open.org/wsbpel/2.0/process/executable
* Standard faults:
- ambiguousReceive
- completionConditionFailure
- conflictingReceive
- conflictingRequest
- correlationViolation
- invalidBranchCondition
- invalidExpressionValue
- invalidVariables
- joinFailure
- mismatchedAssignmentFailure
- missingReply
- missingRequest
- scopeInitializationFailure
- selectionFailure
- subLanguageExecutionFault
- uninitializedPartnerRole
- uninitializedVariable
- unsupportedReference
- xsltInvalidSource
- xsltStylesheetNotFound
Fault Catch Activity Precedence
* Catching precedence for faults without associated data:-> Catch activity with matching faultName
-> catchAll activity
-> Default fault handler
* Catching precedence for faults with associated data:
-> Catch activity with a matching faultName:
--> has a defined faultVariable: faultVariable initialized to the fault part element value.
--> no faultVariable defined
-> Catch activity without faultName attribute
-> catchAll activity
-> Default fault handler
No comments:
Post a Comment