Maybe someone can explain something to me. I¹m having trouble getting an
inline variable initializer to work with Ode, and I¹m pretty sure I¹m doing
something wrong.
Consider this variable declaration...
<bpws:variable messageType="ns0:GetAccountDetail"
name="abc_GetAccountDetail_Input">
<bpws:from>
<bpws:literal>
<tns:GetAccountDetail xmlns:tns="urn:xmlns:Test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:xmlns:Test Test.xsd ">
<GetAccountDetailFilters>
<AcctNum/>
</GetAccountDetailFilters>
</tns:GetAccountDetail>
</bpws:literal>
</bpws:from>
</bpws:variable>
And this assign operation...
<bpws:assign name="Assign" validate="no">
<bpws:copy>
<bpws:from part="payload" variable="input"/>
<bpws:to part="parameters" variable="abc_GetAccountDetail_Input">
<bpws:query
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[/Get
AccountDetailFilters/AcctNum]]></bpws:query>
</bpws:to>
</bpws:copy>
</bpws:assign>
When I try to invoke the process, Ode returns a fault and says this:
ERROR [ASSIGN]: Assignment Fault:
{http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure,l
ineNo=42,faultExplanation=No results for expression: {OXPath10Expression
/GetAccountDetailFilters/AcctNum}
I must be doing something wrong. It works fine if I put the initializer in
the Assign like this:
<bpws:variable messageType="ns0:GetAccountDetail"
name="abc_GetAccountDetail_Input"/>
...
<bpws:assign name="Assign" validate="no">
<bpws:copy>
<bpws:from>
<bpws:literal>
<tns:GetAccountDetail xmlns:tns="urn:xmlns:Test"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="urn:xmlns:Test Test.xsd ">
<GetAccountDetailFilters>
<AcctNum/>
</GetAccountDetailFilters>
</tns:GetAccountDetail>
</bpws:literal>
</bpws:from>
<bpws:to part="parameters" variable="abc_GetAccountDetail_Input"/>
</bpws:copy>
<bpws:copy>
<bpws:from part="payload" variable="input"/>
<bpws:to part="parameters" variable="abc_GetAccountDetail_Input">
<bpws:query
queryLanguage="urn:oasis:names:tc:wsbpel:2.0:sublang:xpath1.0"><![CDATA[/Get
AccountDetailFilters/AcctNum]]></bpws:query>
</bpws:to>
</bpws:copy>
</bpws:assign>
Any hints? Thank you!
-Jon