怎样在osworkflow中使用BeanShell

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

1)如下定义流程文件:

<workflows>

<workflow name="example" type="URL" location="/samples/comment-arg.xml"/>

</workflows>

这样就定义了一个名称为example,位置在/samples/comment-arg.xml的流程文件

2)建立测试类com.hongsoft.os.Test

里面的main方法的代码如下:

counter = 0; //要测试的变量

Map inputs = new HashMap();

inputs.put("test", this); //key: "test" value: 本类的对象

long id = workflow.initialize("example", 1, inputs);//把map传入

assertEquals("beanshell script not parsed correctly", 2, counter);//判断

3)流程定义的initial actions定义如下:

<initial-actions>

<action id="1" name="Start Workflow">

<pre-functions>

<function type="beanshell">

<arg name="script">

com.hongsoft.os.Test test = transientVars.get("test");

test.counter++;

test.counter++;

</arg>

</function>

</pre-functions>

<results>

<unconditional-result old-status="Finished" status="Underway" step="1" owner="${caller}"/>

</results>

</action>

</initial-actions>

这样,在调用workflow.initialize()方法时,将调用beanshell里面的脚本

最后,test.counter由0变为了2.

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航