分享
 
 
 

Shark中调用外部程序的方法

王朝java/jsp·作者佚名  2006-01-30
窄屏简体版  字體: |||超大  

最近看了一下工作流引擎Shark,感觉还可以,可扩展性和可配置性都很不错。

步骤:

1、 定义流程,主要是relevant date及applications等

2、 编写调用的class文件,见后面

3、 运行Shark,装载TestAppInvoke.xpdl,增加Application Mapping,选择应用程序为TestApp,即在包中定义的应用程序;ToolAgent类型为JavaClassToolAgent;Application Name一栏填入Class名称

4、 在Process instantiation management中启动流程,此时会自动执行应用程序

注意事项:

1、应用程序中使用到的数据可定义为Workflow Relevant Date;传入类型可为IN、OUT或INOUT;运行应用程序的节点处增加Extended Attribute,名称为VariableToProcess_UPDATE或VariableToProcess_VIEW,value为参数名;

2、程序需要在classpath里面,使用的程序名称为全名,包括包路径(不带.class);

3、编译后的class文件放到repository/ storedprocedures路径下,注意包的路径;

4、有三种类型的活动节点可调用外部程序

l 活动节点为“Tool”类型,执行者为“System”,开始和结束模式为“AUTOMATIC”;

l 活动节点为“Tool”类型,没有执行者,开始和结束模式为“AUTOMATIC”;

l 活动节点为“Tool”类型,执行者为“System”以外的类型,开始模式为MANUAL,结束模式为AUTOMATIC

5、 如果在Shark中未定义程序映射,Shark将调用默认的ToolAgent,在Shark.conf中可定义;

6、 RuntimeApplicationToolAgent可执行其它外部程序,比如notepad等,此时,传入的application mode如果为0,则Shark会等待应用程序的执行结束;如果不为0,则Shark在应用程序开始后会继续流程的处理;

7、 JavaScriptToolAgent可用于执行JavaScript,application mode为0,则系统将搜索名为applicationName的文件,执行;

TestAppInvoke.java

public class TestAppInvoke {

public TestAppInvoke() {

}

public static void execute(AppParameter p1, AppParameter p2, AppParameter p3) {

JOptionPane.showMessageDialog(null, "初始值:param1=" + p1.the_value

+ " param2=" + p2.the_value + " param3=" + p3.the_value);

//这里可设置获取的参数,注意在包定义中应定义参数类型为OUT或INOUT

//p1.the_mode可获取参数的权限类型:可读、可写还是可读写

p1.the_value = new String("ABCDE");

p2.the_value = new Long(12345); //在Shark中,将Integer类型做为Long类型来处理

p3.the_value = new Boolean(true);

JOptionPane.showMessageDialog(null, "更改后:param1=" +p1.the_mode +p1.the_value

+ " param2=" + p2.the_value + " param3=" + p3.the_value);

}

}

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有