一、安装和配置ActiveBPEL引擎
本文档描述了如何安装ActiveBPEL引擎
(一)、依赖关系
ActiveBPEL引擎要求安装和正确的配置servlet容器。ActiveBPEL引擎的安装脚本是用作环境变量,也就是Tomcat的最上层目录。ActiveBPEL引擎应该运行在任何标准的servlet容器下。
1、下载TOMCAT 5.x (http://jakarta.apache.org/tomcat).
安装TOMCAT,并设置环境变量CATALINA_HOME。(经过测试的版本为Tomcat 5.0.25.)
2、下载软件:(http://www.activebpel.org/download)
其中有两张格式a.tar.gz或者a.zip.两张格式包含的文件是相同的。文件的名字为activebpel-version-type.tar.gz 或activebpel-version-type.zip。版本号是:1.0.1
类型为"src" (source), "bin" (binaries), or "all" (source and binaries)。解压缩下载的文件包,会创建一个名字为activebpel-1.0.1的目录。可以重新命名,或者移动到任何地方。以下的文档中,简称这个目录为"activebpel"。
(二)、安装ActiveBPEL引擎
1、运行脚本install.bat。它将拷贝lib下的内容到$CATALINA_HOME/shared/lib目录下,并且创建$CATALINA_HOME/bpr目录,也就是存放流程的配置文件.bpr的目录。
执行命令行如下:
Windows:
C:\> cd \activebpel
C:\activebpel> install.bat
2、更改引擎的配置参数
在aeEngineConfig.xml 文件里可以配置一些服务的参数,这个文件在$CATALINA_HOME/bpr。配置的改变是通过BpelAdmin配置页改变的,可以访问http: //localhost:8080/BpelAdmin/config.jsp页,并保存配置。
3、启动ActiveBPEL引擎
启动TOMCAT,.
Windows:
C:> %CATALINA_HOME%\bin\startup.bat
4、停止引擎
关闭TOMCAT
Windows:
C:\> %CATALINA_HOME%\bin\shutdown.bat
5、引擎的状态信息
当tomcat启动后,有两个WEB页可以显示服务器的信息
Axis WEB服务列表http://localhost:8080/active-bpel/services
ActiveBPEL引擎管理http://localhost:8080/BpelAdmin/
在此页面可以修改引擎的配置参数,可查看帮助页。
二、ActiveBPEL(TM) 引擎的持续安装
(一)、要使得ActiveBPEL引擎作为一个可持续运行的引擎来,需要做以下步骤:
1、安装数据库Sqlserver 2000和相关的正确的JDBC驱动,并且保证有权限创建数据库的表。Jdbc的驱动程序一定要到sourceforge网站去下载。下载后解压缩文件 包,把其中的jtds-1.0.3.jar文件拷贝到CATALINA_HOME/common/lib下。
2、启动安装好的数据库,执行\activebpel\dist\sql\activebpel\ddl目录下的ActiveBPEL-SQLServer.sql语句,在数据库中创建名为ActiveBPEL的数据库,同时创建基本表。
3、设置Tomcat的数据源。打开%CATILINA_HOME%\conf目录下的omcat-users.xml文件,增加一个“admin”的角色,<role rolename="admin"/>,然后增加一个角色为admin的新用户。
增加数据源的操作如下:
(1)、重启Tomcat,并访问它的管理页http://localhost:8080/admin/
(2)、输入用户名和密码
(3)、按照以下顺序点击左侧的Frame
Server\Service\Host\Context (/active-bpel)\Resources\Data Sources
(4)、从 the list of Data Source Actions中选择 "Create New Data Source"
(5)、按如下数值配置 Data Source信息。(注:在此之前要确保相关的JDBC驱动已经拷贝到tomcat\common\lib下。
JNDI = jdbc/ActiveBPELDB
Data Source URL = jdbc:jtds:sqlserver://localhost:1433/ActiveBPEL
JDBC Driver Class = net.sourceforge.jtds.jdbc.Driver
User Name = [db user name]
Password = [db password]
(6)、按保存按钮,并提交(上方有一个Commit按钮)。
4、修改aeEngineconfig.xml 文件
将activebpel/dist/conf下的aeEngineConfig-Persistent.xml文件拷贝到%CATILINA_HOME%\bpr目录下,并且重命名为 aeEngineconfig.xml,原来的aeEngineconfig.xml文件则被覆盖掉。然后打开这个文件, 更改其中的一行关于数据库的信息 <entry name="DatabaseType" value="mysql" />,把value值改为sqlserver。
5、 ActiveBPEL 数据库的配置文件
为了使ActiveBPEL引擎 转换到应用内存管理的模式,把/activebpel/dist/conf下的 aeEngineConfig-InMemory.xml文件拷贝到 %CATILINA_HOME%\bpr目录下。
< 注:>任何已经设置的ActiveBPEL 引擎的配置参数现在被重新设置成缺省值。
重启tomcat,启动数据库,打开http://localhost:8080/BpelAdmin/页,在Home页可以看到一个“Start Engine”的按钮,启动引擎,当表中的status为running,则表示启动成功。此时,即为以一个可持续的方式启动了ActiveBPEL引 擎。
三、配置BPEL流程示例(以custom_invoke流程为例)
为了配置一个BPEL流程,必须创建和安装一个包含BPEL流程文件的配置文档。 1、这里要用到jar,所以需要一个Java SDK, 任何版本都应该可以,其中经过测试的版本是1.4.1 SDK。安装Java SDK,并且配置环境变量JAVA_HOME。
2、需要ant来运行build.xml文件。Ant测试过的版本为Ant Version 1.5.1。安装 ant后,设置环境变量ANT_HOME,并且要在环境变量path里增加%ANT_HOME%\bin;%JAVA_HOME%\bin。以下的步骤假设已经安装了ant(CATALINA_HOME一定要定义)
,并做好相应的配置。
3、如果你的ActiveBPEL引擎安装程序不能在"localhost:8080"在运行,需要改变下列文件中的相关字符串:build.xml
bpel_process/wsdl/loanapprover.wsdl
bpel_process/wsdl/loanassessor.wsdl
4、配置示例中的流程
在命令行中执行以下命令:
<installdir>/activebpel-version/samples/custom_invoke/ant deploy
该命令调用了两个目标程序:deploy-bpel and deploy-cih.
deploy-bpel 创建和安装了一个包含BPEL流程信息的.bpr 文件。 deploy-cih创建和安装了一个包含custom invoke handlers的.jar文件。
每次一个新的jar 拷贝到$CATALINA_HOME/shared/lib下,重启TOMCAT后可以看到它。不需要每次执行“ant deploy”命令时都重启TOMCAT,仅仅当每次deploy-cih拷贝jar文件到$CATALINA_HOME/shared/lib/下需要重启TOMCAT.这不同于重新配置一个BPR, he ActiveBPEL引擎会发现并重新装载它。
5、在客户端运行BPEL流程
运行ant client命令调用BPEL流程,可以看到运行结果。
或者访问:http://localhost:8080/bpel_example_client_page/index.jsp也可以看到运行结果。
四、配置自己的流程
BPEL的流程需要创建一个配置文档(.jar和.bpr文件),并且把他们拷贝到servelet容器中.为了创建这些文件,需要组织一个特殊结构的目录,并创建一两个相应的配置文件,然后才能通过这些目录来创建文档.
创建一个目录,我们假设这个例子叫mybpel,然后按照下边的列表创建它的子目录:
* bpel
* META-INF
* wsdl
* partners (optional)
其中wsdl目录中包含了所有定义过的WSDL文件,在META-INFM目录中包含了wsdlCatalog.xml文件, partner definition目录定义了 .pdef文件.以.pdd为后缀的文件是流程的配置描述..
作为一个例子,在各个的目录中放入对应的文件,假设有两个WSDL的服务,BPEL的流程名字为 my_process.bpl,各目录结构如下所示:
mybpel
META-INF
wsdlCatalog.xml
bpel
my_process.bpl
my_process.pdd
wsdl
service1.wsdl
service2.wsdl
除非有.pdef文件,否则不需要partners目录.
应用这个目录结构,创建文档并拷贝的到servelet容器中.下面的命令显示了如何配置BPEL流程到TOMCAT(如果没有partners目录,则把partners从jar的命令行中去掉):
Windows:
C:\> cd mybpel
C:\mybpel> jar cf mybpel.bpr *.pdd META-INF bpel partners wsdl
C:\> cp mybpel.bpr $CATALINA_HOME/bpr
在配置文档中有多个.bpel或.pdd文件是允许的.另外,WSDL文件可以放在任意位置,即使是另一台机器,只要把他们打包,在.pdd文件中说明,让BPEL引擎知道它们在哪就可以。