部署就是把流程及其相关的文件发布到ActiveBPEL server中去。在部署时,ActiveBPEL将完成下面的事情:
1. 如果部署时没有指定流程在将来生效,那么流程将马上可以被执行;
2. 流程和部署的信息将被置入管理控制台,用户可以查看并管理;
3. 流程相关的信息将存入数据库中;
4. 如果部署出错,将给出错误信息。
ActiveBPEL引擎如果要执行一个流程,需要将BPEL文件和好几个辅助文件打包到一个BPR(Business Process aRchive)文件中。Bpr文件包括如下信息:
1. BPEL文件(.bpel)
2. BPEL流程中使用的wsdl文件(.wsdl)
3. 资源目录文件(包括wsdl中使用的本地XSD文件和XSL文件)
4. 流程部署描述符(.pdd文件)
5. 伙伴定义文件(可选,.pdef文件)
BPEL文件请参考BPEL标准,流程部署描述符文件将另外单独说明,下面讨论资源目录文件和伙伴定义文件。
资源目录文件
ActiveBPEL通过资源目录文件来查找流程需要的WSDL、XSD等资源文件。下面的例子显示了catalog.xml的一个entry的语法:
<catalog>
<resourceEntry location="string" classpath="slash/separated/classpath/filename.wsdl"/>
</catalog>
|
Location属性映射到资源文件的位置。它可以是pdd文件中resourceReferences块中的<resource>元素的location属性值;也可以是wsdl文件中<import>元素的location属性值。
在部署时加载资源文件的时候,ActiveBPEL引擎从pdd文件中读取resourceReferences,然后用<resource>元素的location属性作为Key,到catalog.xml中来查找有无对应的值。如果找到,引擎就会从对应的classpath加载相应的资源;如果没有找到,那么就认为location是一个绝对URL,并从这个位置来加载资源。
Classpath属性指定了资源文件在bpr文件中的位置,它是相对于bpr根目录的一个位置。
伙伴定义文件
伙伴定义文件对每个服务伙伴定义了端点信息。对于伙伴实现的每个伙伴链接类型,该文件定义了一个端点引用。
比如有个叫“国家银行”的服务伙伴,它向BPEL流程发送一个请求,想评估向某个客户发放贷款的风险。BPEL流程在评估风险后,将查找正确的服务端点,以回调“国家银行”。这是非常有用的,因为“国家银行”可能还有其他的服务链接类型,比如汇率调整或者保险请求等。伙伴定义文件可以为每个伙伴链接类型定义一个端点引用。
用户可以直接在bpr文件中加入.pdef文件作为伙伴定义文件;如果伙伴定义文件修改了,并不需要重新部署BPEL流程,只需要部署伙伴定义文件就可以。样例文件如下:
<?xml version='1.0' encoding="UTF-8"?>
<partnerDefinition principal="Acme" xmlns="http://schemas.active-endpoints.com/pdef/2004/10/pdef.xsd"
xmlns:wsa="http://schemas.xmlsoap.org/ws/2003/03/addressing"
xmlns:s="http://www.active-endpoints.com/wsdl/store">
<partnerLinkType name="s:storeLT">
<role name="customer">
<wsa:EndpointReference xmlns:store="http://www.activeendpoints.com/wsdl/store">
<wsa:Address>store:anyURI</wsa:Address>
<wsa:ReferenceProperties xmlns:Credentials="http://active-endpoints/endpoint-credentials">
<Credentials:username>MyUser</Credentials:username>
<Credentials:password>MyPassword</Credentials:password>
</wsa:ReferenceProperties>
<wsa:ServiceName PortName="StorePort">store:StoreService</wsa:ServiceName>
</wsa:EndpointReference>
</role>
</partnerLinkType>
</partnerDefinition>
|
分享到:
相关推荐
Activebpel部署的客户端配置运行的详细过程(英文原文,不过易懂)。
ActiveBPEL的安装和配置
从网上收集整理关于activeBpel的介绍和资料,对学习了解activeBpel有点帮助
本手册详细介绍一个贷款申请的流程,并用activeBPEL设计和实现
ActiveBPEL、jdk1.5、tomcat5.5.12、eclipse3.4.1
ActiveBPEL引擎要求安装和正确的配置servlet容器。ActiveBPEL引擎的安装脚本是用作环境变量,也就是Tomcat的最上层目录。ActiveBPEL引擎应该运行在任何标准的servlet容器下。
ActiveBPEL引擎要求安装和正确的配置servlet容器。ActiveBPEL引擎的安装脚本是用作环境变量,也就是Tomcat的最上层目录。ActiveBPEL引擎应该运行在任何标准的servlet容器下。
对在此语言基础上自动产生BPEL的实现方法进行研究,提出一种由SCML出发自动转化BPEL并在引擎中自动部署、发布、执行的方法,并用此方法把旅游服务的模型发布在ActiveBPEL引擎上。该方法对于流程自动发布具有一定的可用...
去年写的一个小冬冬,把一个oracle的bpel实例改写后在activeBpel上运行,因为activeBpel是open的,可以研究引擎架构的实现。
2.3. 构建业务流程.............................................................................................- 5- 3. 实例分析.............................................................................
服务组合类,企业业务流程编排实例工具。通过它可以实现服务组合与协同,结合activebpel引擎。
Macromedia Flash ActiveBpel进程查看器。 可以显示流程,流程和用于调用Web服务的变量视图。
SOA and WS-BPEL – Composing Service Oriented Solutions with PHP and ActiveBPEL
包含activebpel5.0.2,apache ode 1.3.6,apache tomcat5.5.27,jdk1.5
BIS-Grid引擎是UNICORE 6中间件(www.unicore.eu)的扩展,该中间件实现了WSRF兼容服务,以支持Service Grid中基于WS-BPEL的工作流执行。 该项目部分基于ActiveBPEL引擎
针对当前主流的分布式计算平台的特点及其在工作流技术中的应用的不足,提出了一种基于Web Services的工作流管理系统架构,并采用ActiveBPEL引擎建立了一个基于Web Services的工作流管理系统平台,最后运行应用实例以...