일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Taxonomy of BPEL Faults
A bpel fault has a fault name, which is a qname (name qualified with a namespace), and a possible messageType. There are two categories of faults in BPEL: business faults and runtime faults.
Business faults are application specific faults and occur when an explicit <throw> activity is executed or an <invoke> activity gets a fault as response. The fault name of a business fault is specified by the BPEL process and the messageType, if one exists, is defined in the WSDL.
Runtime faults are not user defined and will not appear in the WSDL for a process or service. The BPEL spec defines 11 standard faults: selectionFailure, conflictingReceive, conflictingRequest, mismatchedAssignmentFailure, joinFailure, forcedTermination, correlationViolation, uninitializedVariable, repeatedCompensation and invalidReply. They are all in the namespace "http://schemas.xmlsoap.org/ws/2003/03/business-process/" and are typeless, meaning they don't have associated messageTypes. The Oracle BPEL Process Manager also introduces two more runtime faults: bindingFault and remoteFault. They are in the namespace of "http://schemas.oracle.com/extension" and are associated with an Oracle defined messageType "RuntimeFaultMessage". The WSDL that defines the RuntimeFaultMessage messageType is available in the c:/orabpel/system/xmllib directory.
RemoteFault is retryable. It has the following possible fault codes
FaultCode | Reason |
ConnectionRefused | The remote server is not up |
WSDLReadingError | Fail to read WSDL |
GenericRemoteFault | Generic remote fault |
BindingFault is not retryable. It has the following possible fault codes:
FaultCode | Reason |
VersionMismatch | The processing party found an invalid namespace for the SOAP Envelope element |
MustUnderstand | An immediate child element of the SOAP Header element that was either not understood or not obeyed by the processing party contained a SOAP mustUnderstand attribute with a value of "1" |
Client.GenericError | Generic error at client side |
Client.WrongNumberOfInputParts | input message part number mismatch |
Client.WrongNumberOfOutputParts | output message part number mismatch |
Client.WrongTypeOfInputPart | input message part type error |
Client.WrongTypeOfOutputPart | output message part type error |
Server.GenericError | Generic error at server side |
Server.NoService | Server is up but no service |
Server.NoHTTPSOAPAction | Request is missing HTTP SOAP Action |
Server.Unauthenticated | Request is not authenticated |
Server.Unauthorized | Request is not authorized |
Securing Oracle Service Bus with Oracle Web Services Manager (0) | 2009.03.11 |
---|---|
Working with Split-Join (1) | 2009.03.11 |
Configuring Business Services using the HTTP Transport (0) | 2009.03.11 |
Integrating PeopleSoft Integration Broker and Oracle Service Bus (0) | 2009.03.11 |
Integrating PeopleSoft HCM with BPA Suite and SOA Suite (0) | 2009.03.11 |
archidream's Blog is powered by Daum