forEach activity compilation bugs  when compiling completionCondition
---------------------------------------------------------------------

                 Key: ODE-454
                 URL: https://issues.apache.org/jira/browse/ODE-454
             Project: ODE
          Issue Type: Bug
          Components: BPEL Compilation/Parsing
    Affects Versions: 1.2
         Environment: Java(TM) 2 Runtime Environment, Standard Edition (build 
1.5.0_11-b03)
            Reporter: Shammy Chen


I am using ODE 1.2 for my company,when I use forEach activity,I find it fails 
when it comes
to completionCondition.It doesn't work as BPEL 2.0 specfication states.Then I 
try it out,now
it works.The following is my way to fix this problem:
 
(1)modify constructor of class 
org.apache.ode.bpel.compiler.bom.BpelObjectFactory, add these
two statements:
 _mappings.put(Bpel20QNames.FINAL_COMPLETION_CONDITION, 
CompletionCondition.class);
 _mappings.put(Bpel20QNames.FINAL_BRANCHES, Expression.class); 
 
(2)modify class org.apache.ode.bpel.compiler.bom.CompletionCondition,add method 
getBranch:
 public Expression getBranch() {
  return (Expression) 
getFirstChild(rewriteTargetNS(Bpel20QNames.FINAL_BRANCHES));
 }
 
(3)modify compile function of class 
org.apache.ode.bpel.compiler.ForEachGenerator:
replace
 oforEach.completionCondition.branchCount = 
_context.compileExpr(forEach.getCompletionCondition());
for
 oforEach.completionCondition.branchCount = 
_context.compileExpr(forEach.getCompletionCondition().getBranch());
 
I hope you will fix this problem in the main source branch as soon as 
possible,thank you.

-- 
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