Hello,
I try to write a very simple BPEL process with Apache ODE as a Service
Engine into Servicemix.
I have a problem with the assignment operation.
I receive always an error. Here the trace in Servicemix :
-----------------------------------------------------------------------------
ERROR - ASSIGN - Assignment Fault:
{http://schemas.xmlsoap.org/ws/2004/03/business-process/}selection
Failure,lineNo=58
The line number 58 is the copy operation below :
---------------------------------------------------------------------
<copy>
<from xmlns:tns="http://etnic.bull.com">$request.p/tns:poId</from>
<to
xmlns:etnic="http://services.etnic.be">$requestPo.parameters/etnic:detailPoAvecAdresse/ai_ns_po_id</to>
</copy>
Here my BPEL process :
---------------------------------
<?xml version="1.0"?>
<process name="esbFaseImpl"
targetNamespace="http://etnic.bull.com"
xmlns="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
xmlns:bpws="http://schemas.xmlsoap.org/ws/2004/03/business-process/"
xmlns:tns="http://etnic.bull.com"
xmlns:etnic="http://services.etnic.be"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<import location="wsdl/fase.wsdl"
namespace="http://etnic.bull.com"
importType="http://schemas.xmlsoap.org/wsdl/" />
<import location="wsdl/poSimple.wsdl"
namespace="http://services.etnic.be"
importType="http://schemas.xmlsoap.org/wsdl/" />
<partnerLinks>
<partnerLink name="fasePartnerLink"
partnerLinkType="tns:FasePartnerLinkType"
myRole="Provider" />
<partnerLink name="poPartnerLink"
partnerLinkType="etnic:PoPartnerLinkType"
partnerRole="Provider"
initializePartnerRole="yes" />
</partnerLinks>
<variables>
<variable name="request" messageType="tns:faseRequeteMessage"/>
<variable name="response" messageType="tns:faseReponseMessage"/>
<variable name="requestPo"
messageType="etnic:detailPoAvecAdresseRequest"/>
<variable name="responsePo"
messageType="etnic:detailPoAvecAdresseResponse"/>
</variables>
<sequence>
<receive
name="start"
partnerLink="fasePartnerLink"
portType="tns:fasePT"
operation="infosFase"
variable="request"
createInstance="yes"/>
<assign name="assignPoRequest">
<copy>
<from xmlns:etnic="http://services.etnic.be">
<literal>
<etnic:detailPoAvecAdresse>
<ai_ns_po_id />
</etnic:detailPoAvecAdresse>
</literal>
</from>
<to>$requestPo.parameters</to>
</copy>
<copy>
<from
xmlns:tns="http://etnic.bull.com">$request.p/tns:poId</from>
<to
xmlns:etnic="http://services.etnic.be">$requestPo.parameters/etnic:detailPoAvecAdresse/ai_ns_po_id</to>
</copy>
</assign>
<invoke name="invokePo"
partnerLink="poPartnerLink"
portType="etnic:po"
operation="detailPoAvecAdresse"
inputVariable="requestPo"
outputVariable="responsePo">
</invoke>
<assign name="assignPoResponse">
<copy>
<from xmlns:tns="http://etnic.bull.com">
<literal>
<tns:faseReponse>
<tns:po>
<tns:id/>
</tns:po>
</tns:faseReponse>
</literal>
</from>
<to>$response.p</to>
</copy>
<copy>
<from
xmlns:etnic="http://services.etnic.be">$responsePo.parameters/etnic:detailPoAvecAdresse/ao_rec_porg_adrs_wsi/ns_po_id</from>
<to
xmlns:tns="http://etnic.bull.com">$response.p/tns:faseReponse/tns:po/tns:id</to>
</copy>
</assign>
<reply name="end"
partnerLink="fasePartnerLink"
portType="tns:fasePT"
operation="infosFase"
variable="response"/>
</sequence>
</process>
The definition of the messages involved in the copy operation wich fails :
----------------------------------------------------------------------------------------------------
for the request variable :
----------------------------------
<message name="faseRequeteMessage">
<part name="p" element="tns:faseRequete"/>
</message>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://etnic.bull.com"
xmlns:tns="http://etnic.bull.com"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
attributeFormDefault="qualified"
elementFormDefault="qualified">
<element name="faseRequete" type="tns:faseRequeteCT"/>
<complexType name="faseRequeteCT">
<sequence>
<element name="poId" type="tns:idST" minOccurs="0" maxOccurs="1"/>
<element name="etabId" type="tns:idST" minOccurs="0"
maxOccurs="1"/>
<element name="precision" type="tns:precisionST"
minOccurs="0" maxOccurs="1"/>
<element name="corrId" type="xsd:string" minOccurs="0"
maxOccurs="1"/>
<element name="timestamp" type="xsd:string" minOccurs="0"
maxOccurs="1"/>
</sequence>
</complexType>
<simpleType name="idST">
<restriction base="xsd:string">
<pattern value="[0-9]+"/>
<minLength value="1"/>
<maxLength value="5"/>
</restriction>
</simpleType>
</schema>
and for the requestPo variable :
--------------------------------------------
<wsdl:message name="detailPoAvecAdresseRequest">
<wsdl:part element="tns:detailPoAvecAdresse" name="parameters"/>
</wsdl:message>
<schema targetNamespace="http://services.etnic.be"
xmlns="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://services.etnic.be"
xmlns:tns1="http://wsi.services.etnic.be"
xmlns:tns2="http://bzi.error.etnic.be"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<!--<import
namespace="http://bzi.error.etnic.be"/>-->
<!--<import
namespace="http://wsi.services.etnic.be"/>-->
<element name="detailPoAvecAdresse">
<complexType>
<sequence>
<element name="ai_ns_po_id" nillable="false"
type="xsd:int"/>
</sequence>
</complexType>
</element>
</schema>
Do you have an idea of what is wrong ???
Thanks in advance,
Anne.
--
View this message in context:
http://www.nabble.com/BPEL---Assignment-selectionFailure-tf3159559.html#a8763086
Sent from the Apache Ode User mailing list archive at Nabble.com.