[ 
https://issues.apache.org/jira/browse/ODE-498?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Karthick Sankarachary updated ODE-498:
--------------------------------------

    Attachment: evaluate-embedded-variable-reference.patch

The root cause of this issue was a failure by the BPEL compiler, under certain 
circumstances, to properly evaluate XPath expressions containing variable 
references. In particular, if the compiler runs into a function reference in 
the XPath, it summarily short circuits the evaluation of the XPath, thereby 
ignoring any subsequent variable references. This leads the runtime to believe 
that that variable is undefined, hence the selection failure.

> XPath variables used in predicates (e.g.  element[$index]) cause 
> bpel:selectionFailure
> --------------------------------------------------------------------------------------
>
>                 Key: ODE-498
>                 URL: https://issues.apache.org/jira/browse/ODE-498
>             Project: ODE
>          Issue Type: Bug
>          Components: BPEL Runtime
>    Affects Versions: 1.3, 2.0
>            Reporter: Alex Boisvert
>            Assignee: Karthick Sankarachary
>             Fix For: 1.3
>
>         Attachments: evaluate-embedded-variable-reference.patch
>
>
> As reported on the mailing list,
>  I found another BUG-like problem in  ODE 2.0 Build #87 (2009-1-8 2:25:04). 
> That is: the counterName variable can't be used in the position expression of 
> XPath as normal variables are. For example, the following BPEL piece
>          <forEach counterName="i" parallel="no">
>                  <startCounterValue>1</startCounterValue>
>                  <finalCounterValue>2</finalCounterValue>
>                  <scope>
>                    <assign>
>                      <copy>
>                        <from>$i</from>
>                        <to>$output0.body/xsd0:field1[position()=$i]</to>     
> <!-- note this line -->
>                      </copy>
>                    </assign>
>                  </scope>
>                </forEach>
> will incur such ERROR in ODE:
> ERROR - GeronimoLog.error(104) | Assignment Fault: 
> {http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure,lineNo=149,faultExplanation={http://docs.oasis-open.org/wsbpel/2.0/process/executable}selectionFailure:
>  No results for expression: {OXPath10Expression 
> $output0.body/xsd0:field1[position()=$i]}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to