When you select a
system fault like remotefault in a catch activity/fault handler, JDeveloper
copies a wsdl named RuntimeFault.wsdl
from your
<JDEVELOPER_HOME%\\integration\seed\soa\shared\bpel
directory to your project and this wsdl contains following msg :
<?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>
And secondly,
JDeveloper create the faultVariable in your BPEL file (.bepl) like this :
<variable
messageType="bpelx:remoteFault" name="FaultVar"/>
Now if you observe,
the RuntimeFault.wsdl is having the message name as
"RuntimeFaultMessage" where as
the variable's
messageType is messageType="bpelx:remoteFault".
Change all those
instances to RuntimeFaultMessage, and add an import to map the wsdl in the
composite.xml
<import namespace="http://schemas.oracle.com/bpel/extension"
location="RuntimeFault.wsdl"
importType="wsdl"/>
change the instances means where we need to change
ReplyDeleteWhat I meant was to change remoteFault to RemoteFaultMessage in files where it is being used
ReplyDelete