Uploaded image for project: 'ODE'
  1. ODE
  2. ODE-454

forEach activity compilation bugs when compiling completionCondition

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • 1.2
    • 1.3.6, 1.4
    • None
    • Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_11-b03)

    Description

      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.

      Attachments

        1. ForEach.zip
          2 kB
          Shammy Chen

        Activity

          People

            vanto Tammo van Lessen
            shammychen Shammy Chen
            Votes:
            1 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Time Tracking

                Estimated:
                Original Estimate - 0.5h
                0.5h
                Remaining:
                Remaining Estimate - 0.5h
                0.5h
                Logged:
                Time Spent - Not Specified
                Not Specified