我在 JAVA 嵌入中使用下面的行来为 BPEL Invoke DB 适配器输入变量赋值。
setVariableData("S2C_insert_InputVariable","TmpInvStoc3Collection","/ns8:TmpInvStoc3Collection/ns8:TmpInvStoc3/ns8:batchid","12345");
现在我想把这个语句放在 java 中的一个 while 循环中,并希望重复这个迭代 n 次。 我想在集合中放置一个循环变量,但我不知道该怎么做。
我正在寻找如下所示的内容。
setVariableData("S2C_insert_InputVariable","TmpInvStoc3Collection","/ns8:TmpInvStoc3Collection/ns8:TmpInvStoc3[$loop_variable]/ns8:batchid","12345");
请让我知道如何实现这一目标
问候穆拉利
这是
基于以下假设:value
是i
的函数,不能在 BPEL 中计算。
String qry = "";
for (int i = 0; i < n; i++)
{
value = SomeFunctionThatRequiresJavaRatherThanBPEL(i);
qry = "/ns8:TmpInvStoc3Collection/ns8:TmpInvStoc3[" + i + "]/ns8:batchid";
setVariableData("S2C_insert_InputVariable","TmpInvStoc3Collection",qry,value);
}
代码可以更有效,但它应该做你想要的。