JAVA学习网首页 把生活查询网加入收藏 把JAVA学习网设为首页 联系方式
    Hi,JAVA学习
JAVA基础 设计模式 数据库 JavaBeans J2EE JavaDelphi 用户界面 综合文章  
Shark工作流文档翻译活动--Shark(1)
时间:22/04/2007
作者:网络
来源:网络
小提示点这里把文章加入您的收藏夹,方便下次查看
设置文章字体大小:[ ]

什么是shark

l        这是一个完全基于WFMC和OMG规范的工作流引擎

l        他使用了WFMC的XML过程定义语言(XPDL)作为自己的过程定义语言。

l        在他的标准核心实现中,shark是一个不需要创建他自己的线程的库,并且他能够被使用到不同的环境中(在WEB应用中、再SWING应用中、作为CORBA服务、在EJB容器中……)我们的工程分发中给出了一个从swing应用和corba中使用shark的例子而且还用一个jsp客户端应用程序。

l        他是非常可配置的,所有的内在接口,包括核心部分都能够被其他实现所替换。

l        他能够同时被使用到多种虚拟机上(在集群环境中)

l        连同POJO接口一起,他提供了一个CORBA接口,通过这个接口,CORBA客户端应用程序能够和作为CORBA服务的shark进行通信

l        他能够配制成使用LDAP服务器上的组织结构定义

l        他不使用任何XPDL扩展属性作为他的执行规则

l        他的接口允许使用外部处理(在一些应用中被使用),所以shark能够和他的客户端处理程序一起工作。

l        他使用DODS(一种来自EnhydraOR/M工具)它几乎能够使shark使用任何的数据库系统来存储信息,并且他的目标数据库能够被简单地以url的形式配置

l        他实现的工具代理的概念,这个WFMC的概念是来执行自动活动的工具(很多有用的工具代理在shark中被使用)

l        shark能过把客户自定义的java类作为流程变量来使用

开始使用shark

shark能够在客户端应用程序中被首次配置(总共有三种不同的配置方法),然后得到一个他的实例,这是shark在应用程序中最不同的使用方法了。

String confFilePath=”Shark.conf”

Shark.configure(confFilePath);

Shark shark=Shark.getInstance();

任何其他功能都能够通过Shark接口完成。

如果你想通过CORBA接口使用shark,首先你需要开启SHARK CORBA 服务器,然后你能够通过网络使用SHARK CORBA  API来存取他(你可以使用“runA”脚本启动admin应用来察看这个例子),当通过”run”脚本启动服务器以后,命名服务就被自动地在这台机器上启动了。

SHARK CORBA 服务器是一个使用shark库德例子。

 

配置shark

 

这里有四种不同的方法来配置shark:

1.使用无参数的configure()方法

此时,shark仅仅被配置为使用它的jar文件中的配置文件。采用这种配置方式的shark将在默认方式下工作,有很多的内在的api不能实现。(Caching, Authentication, UserGroup, ...).

2.使用configure(String filePath)方法,他在这个filePath路径上创建一个文件对象然后调用configure(File configFile)来实现下一步的功能

3.使用configure(File configFile)方法

shark首先使用jar文件中的基本的配置文件,然后使用额外的指定的文件配置。如果配置文件和默认配置文件中定义了相同的属性,这个配置文件中属性的值将覆盖默认的配置文件的值,所有的额外属性都被添加到shark配置中。虽然,你作为参数配置而作的配置文件实际上不需要定义所有的配置,但是,他却能够重新定义默认配制参数,并且能够添加额外的配置参数。

4.使用configure(Properties props)方法:他的功能基本上和上一种配置方法一致,但是他提供了一种使客户端应用程序使用javaProperties对象来配置shark的可能性。

你可以通过不同的配置方法得到shark实例,如果你想要使用很多的shark实例(从不同的虚拟机上)在同一个数据库上的话,实际上,你最好使用不同的配置文件将引擎名称配制成不同的名称(同样,如果你从很多个虚拟机上得到应用得画,所有得配置必须覆盖DODS cache size的值,并且CacheManagerClassName属性应该不存在)这是因为进程执行中的同步问题,如果一个虚拟机在一个进程中执行一个操作,他必须被shark实例封锁住(他们是通过enginename属性来鉴别的),此时他不能够被别的虚拟机所使用,直到他完成他的工作并释放封锁。

就像以前所提到的,shark是一个高可配置性的工作流引擎,所有的组件,包括核心在内都能够被客户实现所替代。

最普遍的配置shark的方法是定义用户自己的Shark.conf文件,通过简要地解释Shark.conf文件中的含义,我们将在这里介绍如何配置shark。
上一篇:jdk1.5之五 —— import static members

下一篇:Shark工作流文档翻译活动--Shark(1)

  • JDBC编程基础 第二部分
  • EJB设计模式2
  • Web服务器和应用程序服务器有什么区别?
  • 如何使用J2ME中的线程
  • TIJ阅读笔记(第九章)
  • J2ME学习之温故而知新篇
  • [开发技巧]对jar包进行再次修改
  • Jsp中使用xmlhttp进行数据交互~
  • 第八讲 外观管理器之gridbaglayout
  • Apache :POI-HSSF
  • class Prime
  • 使用Eclipse和AJDT开发AspectJ应用(1)- 基础篇
  • 最大化J2EE和数据库交互操作的性能
  • GB 2312 汉字编码字符集
  • swt tray demo:右键菜单,单击隐藏,所有事件的例子
  • J2EEvs.Microsoft.NET(5)
  • 我的J2ME编程练习(7)——Canvas2
  • 从Continuation说起
  • 返回】 【顶部】 【关闭
    Copyright © 2005-2010 www.594k.com All Rights Reserved.
    版权所有:JAVA学习网 备案序号:皖ICP备06004238号