当前位置:文档之家› 慧正工作流引擎集成说明

慧正工作流引擎集成说明

慧正工作流引擎集成说明
本文档是针对将工作流引擎集成部署到第三方应用的说明。

按照集成部署步骤安装完毕后,首先需要按照集成接口说明,进行接口开发。

如果需要使用产品的工作流管理界面,需要单独部署产品提供的工作流管理应用。

如果需要在自己的工程内部开发工作流管理页面应用,可以参考产品的管理应用,调用相关api自行开发。

1安装部署
按照下述步骤,可以将引擎产品嵌入部署到现有工程中。

第一步:创建数据库,执行建表脚本
根据采用的数据库类型,执行对应sql目录下的脚本文件。

第二步:按照程序文件情况,将程序文件拷贝到web应用根路径下相应位置
第三步:按照如下说明修改配置文件
Web-Inf\web.xml需要添加以下内容
<!-- 流程配置文件加载 -->
<servlet>
<servlet-name>workflow</servlet-name>
<servlet-class>com.horizon.workflow.xmlconfig.ConfigLoaderServlet</servlet-clas s>
<init-param>
<param-name>WorkFlow</param-name>
<param-value>workflow.xml</param-value>
</init-param>
<load-on-startup>3</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>workflow</servlet-name>
<url-pattern>/workflow.hz</url-pattern>
</servlet-mapping>
<!-- 流程定制工具Flex通讯加载 -->
<listener>
<listener-class>flex.messaging.HttpFlexSession</listener-class>
</listener>
<servlet>
<servlet-name>messageBroker</servlet-name>
<servlet-class>flex.messaging.MessageBrokerServlet</servlet-class>
<init-param>
<param-name>services.configuration.file</param-name>
<param-value>/WEB-INF/flex/services-config.xml</param-value>
</init-param>
<load-on-startup>0</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>messageBroker</servlet-name>
<url-pattern>/messagebroker/*</url-pattern>
</servlet-mapping>
第四步:
启动应用,访问http://地址:端口/horizon/workflow/workflow.hz,将页面返回的机器码发给产品提供商,产品提供商提供license文件,拷贝到WEB-INF\license文件夹下,重启服务器。

2工作流引擎集成接口说明
2.1流程定义工具登录验证接口
流程定义工具采用flex技术开发,本接口用于实现流程定义工具访问时,进行用户是否已经登录验证。

接口类例子:src\com\examples\Authentication.java
请按照此类中的注释实现相应代码。

将接口类配置到WEB-INF\flex\remoting-config.xml中,<source>部分填写自己实现的接口类名
<destination id="HZEFlow">
<properties>
<factory>flexFactory</factory>
<source>com.horizon.examples.Authentication</source>
<scope>application</scope>
</properties>
</destination>
2.2组织结构接口
接口类例子:src/com/horizon/workflow/flowengine/impl/example/XMLOrg.java 请按照程序中的说明,实现接口方法的具体程序,
并在WEB-INF\workflow.xml配置指向自己的实现类,例如:
<XMLOrgClassName>com.horizon.workflow.flowengine.impl.example.XMLOrg</XMLOr gClassName>
1)通过视图快速集成基本组织机构查询:
如果已有的组织机构库,能够支持创建view.sql中的视图,就可以直接调用系统的部分组织机构接口功能,减轻开发工作量。

2)自行编写人员选择的返回值规则:
如果自行编写人员选择,返回值格式要求如下:
用户选择返回值格式:“U_用户id=用户名|U_用户id=用户名|......”
部门选择返回值格式:“D_部门id=部门名|D_部门id=部门名|......”
群组选择返回值格式:“G_群组id=群组名|G_群组id=群组名|......”
角色选择返回值格式:“R_角色id=角色名|R_角色id=角色名|......”
全部选择混合返回值格式为:“U_用户id=用户名|D_部门id=部门名|G_群组id=群组名|R_角色id=角色名|.......”
2.3通知消息发送接口
接口类例子:src/com/horizon/workflow/flowengine/impl/example/XMLTodo.java 如果采用产品默认提供的待办程序,可以不用修改其中的发送待办、待阅类接口方法。

发送各种短信、即时消息、邮件通知的接口,在此类中根据需要实现。

2.4表单数据解析接口
接口类例子:
src/com/horizon/workflow/flowengine/impl/example/XMLFormParse.java
此接口类提供了两个方法:
saveJspData用于jsp页面数据提交处理。

getFormXMLInfo用于webservice调用的页面数据提交处理。

按照产品定制嵌入jsp页面(参见4流程引擎集成开发快速入门)提供的说明,可以支持这两个接口的默认实现,不需要修改这个类。

2.5流程处理入口实现类
接口类例子:src/com/horizon/workflow/flowengine/impl/example/XMLApp.java 这个类用于实现业务数据处理,采用引擎jsp业务数据提交规则实现,基本不需要修改这个类。

如果需要编写自己的form提交程序,需要基于此类中的
public LinkedHashMap doAction(HttpServletRequest request)方法进行修改。

2.6数据库操作接口封装
接口类例子:src/com/horizon/workflow/flowengine/impl/example/XMLAccess.java 这个类主要用于封装数据库操作方法,如果不改变引擎数据操作数据的基础类包,不需要修改。

2.7扩展功能接口
接口类例子:src/com/horizon/workflow/flowengine/impl/example/XMLExpend.java 引擎扩展功能接口类,目前包括对节点办理时限的处理实现接口,可以在系统的定时器中调用此处的方法,对超期文件进行自动处理。

此类可以根据办理时限控制具体需要进行修改。

相关主题