http://blog.sina.com.cn/jinchaohui[订阅]
个人资料
分类
    内容读取中…
评论
读取中...
访客
读取中...
好友
读取中...
博文
SHARK-API 结构说明(2007-07-05 12:49)
 SHARK-API 结构说明

SHARK即实现了WFMC规范(v.1.0)接口(接口1、2、3、5),也实现了OMG的接口

一、WFMC接口
1、WfMC接口2/3 (WAPI v.1.0)
   包 org.enhydra.shark.api.client.wfmc.wapi
2、WfMC接口5
   包 org.enhydra.shark.api.client.wfmc.audit

二、OMG接口
包 org.enhydra.shark.api.client.timebase
包 org.enhydra.shark.api.client.wfbase
包 org.enhydra.shark.api.client.wfmodel
SHARK内核实现类是对OMG规范接口的实现,WFMC接口是对OMG接口的包装。

三、SHARK对OMG接口扩展
包 org.enhydra.shark.api.client.wfservice
SHARK对OMG的扩展,主要包含为管理目的需要的异常和接口。同时定义了一个名为SharkInterface的主接口,作为其它所有SHARK接口的入口。

四、SHARK的Internal接口
以上三个接口都是客户端接口,而SHARK的Internal接口是内核服务组件接口,SHARK内核要调用不同的服务

   通过SHARK提供的API与SHARK引擎进行交互共有三种方式:POJO、EJB、WS。
1、POJO方式
   通过API来启动一个引擎服务,每个服务都是独立的,只向启动者提供服务,但是多个服务可以共享一个数据库,就可以供多用户进行工作流的执行。
   而EJB、WS则向多用户提供一个服务,多用户共享一个服务和数据库,客户端与之连接不需要启动引擎服务器。
   下面用一个实例代码介绍如何启动服务引擎。为了测试方便,建议建立项目时,把SHARK安装目录下的LIB目录的所有包都加入到CLASSPATH中。

package sharkfirst;

import javax.naming.InitialContext;
import javax.transaction.UserTransaction;

import org.enhydra.dods.jts.LocalContextFactory;
import org.enhydra.shark.Shark;

public class SharkFirst {
 public static void main(String[] args){
  try{
   LocalContextFactor

1、将ejb目录下的两个文件包括:sharkejb-jboss.ear和sharkdb-ds.xml文件拷贝到
    JBOSS的 deploy目录下
2、将数据库的JDBC驱动程序拷贝到JBOSS的lib目录下
 
3、 启动JBOSS
    SHARK默认数据库为HSQL,一般来说在应用中需要更换数据库,下面以配置ORACLE为例来进行说明。
1、创建ORACLE数据库
   一般为数据库名称为:shark,并赋予用户足够的权限
2、修改configure.properties文件
   修改db_loader_job=hsql为db_loader_job=oracle
   找到以下行:
   # Oracle
   oracle_JdbcDriver=oracle.jdbc.OracleDriver
   oracle_Connection_Url=jdbc:oracle:thin:@localhost:1521:shark
   oracle_user=
   oracle_passwd=
   根据你创建的数据库填写对应参数
3、修改ANT脚本文件configure.xml
  把所有的hsql替换为oracle
4、运行configure.bat来执行ANT脚本
   在运行脚本前,需要将ORACLE
1、从http://www.together.at/together/index.php 下载tws-community-2.0-1并安装
2、根据你的需要共有七种启动选择
  A:在Swing Admin application中启动SHARK
  B:在Swing Console application中启动SHARK
  C:用runTS repository/external/test-JavaScript.xpdl test_js basic 1 1 以示例形式启动
  D:把SHARK部署到JBOSS中,以EJB形式提供服务
     可用Swing Admin 或 Swing Console作为客户访问SHARK
     之前需要做如下操作:
        SharkClient.conf设置ClientTyp的值为ClientType=EJB
  
Shark的引擎调度机制(2007-06-08 18:56)
 

Shark的引擎调度机制

部分内容摘自《工作流引擎核心调度算法与PetriNet》

Shark支持XPDL

Shark提供了基于CORBA的对分布式的支持,和多线程的事务安全控制。

Shark的调度方法是基于WfProcessImpl的run方法,采用遍历循环的方式,遍历已经完成的活动实例,然后往下推进。

 

Java J2EE的发展历程(2007-05-14 10:30)

摘录:中国Java实验室

 

起点

在“J2EE”这个缩略语被第一次介绍给世人的时刻,也许没有几个人可以预料出它在日后的奇特历程。那是在1999年6月的JavaOne年会上,时任Sun公司Java企业开发部门主管的Mala Chandra兴奋地预告了Java世界的这位新成员。

那些不熟悉背景的听众们,揣摩着她演说中出现的一串串全新术语,表情大概又是惊喜、又是迷惑:一个完整的“多层企业开发架构”、以“容器”和“组件”的形式提供服务、一套“厂商中立的开放技术规范”、对开发者隐藏了不同平台和“中间件”的技术细节、实现了企业级应用间的“无缝集成”等等。

在今天的开发者看来,这些似乎都已经是老生常谈,但在当时的场景下,闪动在幻灯片上的每一个口号,都意味着听众们事后又要经历一段困难的学习过程。

幸亏Chandra有一副了不起的口才;这位本科念建筑学的印度裔高层主管,谈起软件架构来也有特强的空间想象力。她清晰地说明了设计J2EE架构的两个初衷:首先,对于厂商,J2EE意味着一套开放标准,加入这个标准,他们的产品就可以运行在各种不同的操作系统和工作环境下,成为

SOA发展现状(2007-04-28 16:53)
 横看成岭侧成峰,远近高低各不同, 转发一个帖子:

-、国内发展现状和应用需求
SOA几乎已经成为企业应用架构的主流,从2006年6月22日计算机世界“中间件应用年会”上可以看出,大部分主题演讲都涉及到SOA的应用和部署问题,IBM当前不仅以服务商的角色介入SOA,而且在此次大会上还带来了众多的SOA的成功实施案例;BEA公司也定位于SOA平台提供商,并且推出了一系列产品和方案;国内软件企业,像中创、东方通科技以及金蝶、用友、科诺等公司也在不同程度地切入SOA工具或解决方案的开发。种种迹象表明,SOA已经超越概念走向应用,并逐渐形成一股不可阻挡的潮流。


二、Web Services开源热火朝天
1.Web Services开源项目
作为SOA一种主要实行方式的Web Services,其开源项目正如火如荼。

Java6 发布,支持XML&WebService, JDK就直接支持Web Services了。这样Sun强势参与Web Services的竞争。这种现象很有趣,各大厂商在各自强项之间互相渗透,Sun被Apache Harmony项目所逼,被一些厂商
三、创建运行场景
  运行场景描述在测试活动过程中发生的各种事件
  包括:运行虚拟用户活动的Load Generator机器列表
     测试脚本列表
     虚拟用户
     虚拟用户组
  配置运行场景
     虚拟用户数、Load Generator machine机器集、为脚本分配虚拟用户百分比。
    场景类型:
       Manual Scenario 手动设置场景
       Manual Scenario With Percentage Mode 定义虚拟用户总数、机器集、为每个脚本分配虚拟用户百分比
       Goal-Oriented Scenario 根据预定义目标自动生成场景
    Manual Scenario步骤:
     (1)添加Load Generator machine
         添加机器、连接机器
     (2)选择Vuser/Groups
       添加组或添加虚拟用户,设定
学问要从问开始(2007-04-23 18:38)
    早上参加晨会,积极发言的同事为大家带来了快乐,说到在这里和大家一起工作就是快乐时,我觉得,一点都不错,大家聚集到一起,组成一个和谐的团队,为了一个共同的目标而努力,不管结果如何,其过程本身就是快乐的。在这里,你可以实现自己的价值,在这里有自己的良师益友,闻道有先后,术业有专攻,这里卧虎藏龙,每个人都可以作为自己的老师,可以快速的提升自己。
    今天主要学习设计模式和面向对象的设计原则,以前也读过相关资料,现在重新细看,觉得还是有很多东西不明白,不过比以前又多了些领悟。学习可能就是这样,只要自己不懈努力,总能达到自己的目标。
    中午检查12366网站,发现有个术语“税前扣除”,觉得不明白,就问旁边的崔工,崔工给出了详细的解释。我突然觉得自己好像是身在金山中,不知道去拿,崔工在税务业务上是公司的权威,同样公司有许多不同方面的权威,自己为什么不好好利用呢?自己看书琢磨,怎么也没有请教精通此道的人有效的多,通过LOADRUNNER培训就得到了很好的验证。看来,以后要充分利用公司现有的资源,多学多问,快速提升自己。