Hi I'm using ode and the eclipse plugin for creating a bpel process. My goal is to iterate, with a forEach loop, over the returned elements I get from an invoke activity. The xml message looks something like this
<GetAllMatricesResponse xmlns="http://bccs.uib.no/Jaspar"> <Matrix xmlns="http://bccs.uib.no/Jaspar" Format="PFM" ID="MA0001"> .... </Matrix > </GetAllMatricesResponse> The GetAllMatricesResponse element can contain many Matrix elemets. My forEach looks like this <bpws:forEach counterName="Counter" name="ForEach" parallel="no"> <bpws:finalCounterValue><![CDATA[count($output.parameters/ns0:Matrix)]]></bpws:finalCounterValue> <bpws:completionCondition> <bpws:branches><![CDATA[1$Counter == count($output.parameters/ns0:Matrix)]]></bpws:branches> </bpws:completionCondition> <bpws:scope> <bpws:invoke name="Invoke1"/> </bpws:scope> </bpws:forEach> But when I compile it with bpelc I get these errors WARN - 2008-06-12 13:44:19,498 - <org.apache.ode.bpel.compiler.bom.BpelObjectFactory> Unrecognized element in BPEL dom: { http://docs.oasis-open.org/wsbpel/2.0/process/executable}completionCondition java org.apache.ode.tools.bpelc.cline.BpelC: null java.lang.NullPointerException at org.apache.ode.bpel.compiler.BpelCompiler.getExpressionLanguage(BpelCompiler.java:1606) at org.apache.ode.bpel.compiler.BpelCompiler.compileExpr(BpelCompiler.java:531) at org.apache.ode.bpel.compiler.BpelCompiler.compileExpr(BpelCompiler.java:521) at org.apache.ode.bpel.compiler.ForEachGenerator.compile(ForEachGenerator.java:55) at org.apache.ode.bpel.compiler.BpelCompiler$7.run(BpelCompiler.java:888) at org.apache.ode.bpel.compiler.BpelCompiler.compile(BpelCompiler.java:1051) at org.apache.ode.bpel.compiler.BpelCompiler.compileActivity(BpelCompiler.java:884) at org.apache.ode.bpel.compiler.BpelCompiler.compile(BpelCompiler.java:833) at org.apache.ode.bpel.compiler.SequenceGenerator.compileChildren(SequenceGenerator.java:47) at org.apache.ode.bpel.compiler.SequenceGenerator.compile(SequenceGenerator.java:41) at org.apache.ode.bpel.compiler.BpelCompiler$7.run(BpelCompiler.java:888) at org.apache.ode.bpel.compiler.BpelCompiler.compile(BpelCompiler.java:1051) at org.apache.ode.bpel.compiler.BpelCompiler.compileActivity(BpelCompiler.java:884) at org.apache.ode.bpel.compiler.BpelCompiler.compile(BpelCompiler.java:833) at org.apache.ode.bpel.compiler.BpelCompiler$5.run(BpelCompiler.java:710) at org.apache.ode.bpel.compiler.BpelCompiler$8.run(BpelCompiler.java:1145) at org.apache.ode.bpel.compiler.BpelCompiler.compile(BpelCompiler.java:1051) at org.apache.ode.bpel.compiler.BpelCompiler.compileScope(BpelCompiler.java:1095) at org.apache.ode.bpel.compiler.BpelCompiler.compile(BpelCompiler.java:690) at org.apache.ode.bpel.compiler.BpelC.compile(BpelC.java:260) at org.apache.ode.bpel.compiler.BpelC.compile(BpelC.java:330) at org.apache.ode.tools.bpelc.BpelCompileCommand.execute(BpelCompileCommand.java:121) at org.apache.ode.tools.bpelc.cline.BpelC.main(BpelC.java:99) I could not figure it out. Also is the counter and logic in the xpath expression correct, not so experienced in this cheers, Håkon -- Håkon Sagehaug, Software Developer Parallab, Bergen Center for Computational Science (BCCS) UNIFOB AS (University of Bergen Research Company)
