Author: rr
Date: Mon Aug 3 21:50:50 2009
New Revision: 800586
URL: http://svn.apache.org/viewvc?rev=800586&view=rev
Log:
ODE-572: LValue evaluation job failed after assign to const expression fix
Modified:
ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAssignActivity1/TestAssign.bpel
ode/trunk/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/AssignHelper.java
Modified:
ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAssignActivity1/TestAssign.bpel
URL:
http://svn.apache.org/viewvc/ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAssignActivity1/TestAssign.bpel?rev=800586&r1=800585&r2=800586&view=diff
==============================================================================
---
ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAssignActivity1/TestAssign.bpel
(original)
+++
ode/trunk/bpel-test/src/test/resources/bpel/2.0/TestAssignActivity1/TestAssign.bpel
Mon Aug 3 21:50:50 2009
@@ -103,6 +103,19 @@
<to variable="otherMsgVar" part="TestPart"/>
</copy>
</assign>
+ <scope>
+ <faultHandlers>
+ <catchAll>
+ <empty/>
+ </catchAll>
+ </faultHandlers>
+ <assign>
+ <copy>
+ <from>1</from>
+ <to>1</to>
+ </copy>
+ </assign>
+ </scope>
<reply name="end" partnerLink="TestAssignPartnerLink"
portType="test:TestAssignPortType"
operation="testAssign" variable="otherMsgVar"/>
</sequence>
Modified:
ode/trunk/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/AssignHelper.java
URL:
http://svn.apache.org/viewvc/ode/trunk/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/AssignHelper.java?rev=800586&r1=800585&r2=800586&view=diff
==============================================================================
---
ode/trunk/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/AssignHelper.java
(original)
+++
ode/trunk/runtimes/src/main/java/org/apache/ode/bpel/rtrep/v2/AssignHelper.java
Mon Aug 3 21:50:50 2009
@@ -202,7 +202,13 @@
final OdeInternalInstance napi = getBpelRuntime();
Node lval = null;
if (!(to instanceof OAssign.PartnerLinkRef)) {
- VariableInstance lvar = _scopeFrame.resolve(to.getVariable());
+ VariableInstance lvar;
+ try {
+ lvar = _scopeFrame.resolve(to.getVariable());
+ } catch (RuntimeException e) {
+ __log.error("iid: " + napi.getInstanceId() + " error
evaluating lvalue");
+ throw new
FaultException(getOActivity().getOwner().constants.qnSelectionFailure,
e.getMessage());
+ }
if (!napi.isVariableInitialized(lvar)) {
Document doc = DOMUtils.newDocument();
Node val = to.getVariable().type.newInstance(doc);