You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ode.apache.org by Pishava <pi...@yahoo.com> on 2009/04/28 15:54:04 UTC
Assignment Fault in BPEL
Hello,
I have been dealing with this damn BPEL Assignmebt fault for couple of days, with no success. Apparently source of problem is Namespace, but I don't know how to resolve it.
I do appreciate your comments.
regards,
/Shahab
BPEL error message:
ERROR - GeronimoLog.error(104) | Assignment Fault: {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure,lineNo=38,faultExplanation=No results for expression: {OXPath10Expression $output.payload/tns:cleanPercentage}
--------------------------------------------------------------
BPEL process is :
<?xml version="1.0" encoding="UTF-8"?>
<bpws:process xmlns:bpws="http://docs.oasis-open.org/wsbpel/2.0/process/executable"
xmlns:ns="http://sample.bpel.org/bpel/sampleArtifacts"
xmlns:ns0="http://ecs.kth.se/CleanessService/CleanRoom25_WSDL"
xmlns:tns="http://sample.bpel.org/bpel/sample"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
exitOnStandardFault="yes" name="CleanRoomProcess" suppressJoinFailure="yes" targetNamespace="http://sample.bpel.org/bpel/sample">
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/" location="CleanRoomProcess.wsdl" namespace="http://sample.bpel.org/bpel/sample"/>
<bpws:import importType="http://www.w3.org/2001/XMLSchema" location="CleanRoom25WSDLService_schema1.xsd" namespace="http://ecs.kth.se/CleanessService/CleanRoom25_WSDL"/>
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/" location="CleanRoom25WSDLService.wsdl" namespace="http://ecs.kth.se/CleanessService/CleanRoom25_WSDL"/>
<bpws:import importType="http://schemas.xmlsoap.org/wsdl/" location="CleanRoomProcessArtifacts.wsdl" namespace="http://sample.bpel.org/bpel/sampleArtifacts"/>
<bpws:partnerLinks>
<bpws:partnerLink myRole="CleanRoomProcessProvider" name="client" partnerLinkType="tns:CleanRoomProcess"/>
<bpws:partnerLink name="PL_CleanRoom25" partnerLinkType="ns:PLType_CleanRoom25" partnerRole="Room25Cleaner"/>
</bpws:partnerLinks>
<bpws:variables>
<bpws:variable messageType="tns:CleanRoomProcessRequestMessage" name="CleanRoomProcessRequestMessage"/>
<bpws:variable messageType="ns0:CleanRoom25_WSDLOperation" name="CleanRoom25_Request"/>
<bpws:variable messageType="ns0:CleanRoom25_WSDLOperationResponse" name="CleanRoom25_Response"/>
<bpws:variable messageType="tns:CleanRoomProcessResponseMessage" name="CleanRoomProcessResponseMessage"/>
</bpws:variables>
<bpws:sequence name="main">
<bpws:receive createInstance="yes" name="receiveInput" operation="process" partnerLink="client" variable="CleanRoomProcessRequestMessage"/>
<bpws:assign name="Assign1" validate="yes">
<bpws:copy>
<bpws:from>
<bpws:literal>10</bpws:literal>
</bpws:from>
<bpws:to part="RoomID_25" variable="CleanRoom25_Request"/>
</bpws:copy>
<bpws:copy>
<bpws:from part="payload" variable="CleanRoomProcessRequestMessage"/>
<bpws:to part="RoomID_25" variable="CleanRoom25_Request"/>
</bpws:copy>
</bpws:assign>
<bpws:invoke inputVariable="CleanRoom25_Request" name="Invoke_CLR25" operation="CleanRoom25_WSDLOperation" outputVariable="CleanRoom25_Response" partnerLink="PL_CleanRoom25"/>
<bpws:assign name="Assign2" validate="yes">
<bpws:copy>
<bpws:from>
<bpws:literal>
<cleanessInfo xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:type="ns0:cleanessInfo">
<cleanPercentageRoom25>1.0</cleanPercentageRoom25>
<cleanRoom25>true</cleanRoom25>
</cleanessInfo>
</bpws:literal>
</bpws:from>
<bpws:to part="return" variable="CleanRoom25_Response"/>
</bpws:copy>
<bpws:copy>
<bpws:from>$CleanRoom25_Response.return/cleanRoom25</bpws:from>
<bpws:to >$CleanRoomProcessResponseMessage.payload/cleanRoom25</bpws:to>
</bpws:copy>
</bpws:assign>
<bpws:reply name="replyOutput" operation="process" partnerLink="client" variable="CleanRoomProcessResponseMessage"/>
</bpws:sequence>
</bpws:process>
----------------------------------------------------------------
Message definition part in the WSDL is:
<definitions name="CleanRoomProcess"
targetNamespace="http://sample.bpel.org/bpel/sample"
xmlns:tns="http://sample.bpel.org/bpel/sample"
xmlns:plnk="http://docs.oasis-open.org/wsbpel/2.0/plnktype"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" >
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPE DEFINITION - List of types participating in this BPEL process
The BPEL Designer will generate default request and response types
but you can define or import any XML Schema type and use them as part
of the message types.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<types>
<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
attributeFormDefault="unqualified"
elementFormDefault="qualified"
targetNamespace="http://sample.bpel.org/bpel/sample">
<xs:complexType name="cleanessInformation">
<xs:sequence>
<xs:element name="cleanPercentage" type="xs:float"/>
<xs:element name="clean" type="xs:boolean"/>
</xs:sequence>
</xs:complexType>
</xsd:schema>
</types>
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
MESSAGE TYPE DEFINITION - Definition of the message types used as
part of the port type defintions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<message name="CleanRoomProcessRequestMessage">
<part name="payload" type="xsd:int" />
</message>
<message name="CleanRoomProcessResponseMessage">
<part name="payload" type="cleanessInformation" />
</message>
<!-- ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
PORT TYPE DEFINITION - A port type groups a set of operations into
a logical service unit.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -->
<!-- portType implemented by the CleanRoomProcess BPEL process -->
<portType name="CleanRoomProcess">
<operation name="process">
<input message="tns:CleanRoomProcessRequestMessage" />
<output message="tns:CleanRoomProcessResponseMessage"/>
</operation>