You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@ode.apache.org by "Shammy Chen (JIRA)" <ji...@apache.org> on 2008/12/07 03:53:44 UTC

[jira] Updated: (ODE-454) forEach activity compilation bugs when compiling completionCondition

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

Shammy Chen updated ODE-454:
----------------------------

    Attachment: ForEach.zip

A process to test completionCondition of forEach activity

> 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
>         Attachments: ForEach.zip
>
>   Original Estimate: 0.5h
>  Remaining Estimate: 0.5h
>
> 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.