西工大研究生服务计算实验四BPEL文档格式.docx
- 文档编号:13440399
- 上传时间:2022-10-10
- 格式:DOCX
- 页数:14
- 大小:127.33KB
西工大研究生服务计算实验四BPEL文档格式.docx
《西工大研究生服务计算实验四BPEL文档格式.docx》由会员分享,可在线阅读,更多相关《西工大研究生服务计算实验四BPEL文档格式.docx(14页珍藏版)》请在冰豆网上搜索。
业务流程是各种不同功能的活动相连的一组由相关的任务,并且按照一定的业务逻辑执行,Web服务采用BPEL标准描述业务交互中参与者的实际行为,并将一组现有的服务组合起来,从而定义一个新的Web服务。
Web服务业务流程组合原理实验要求编写并发布Web服务,并通过设计和编写BPEL流程描述语言,进行部署和调用。
通过实践,使同学熟悉Web服务业务流程执行描述语言BPEL规范、流程执行引擎等相关原理知识,培养动手能力。
编写BPEL流程CaculateComputer,分别调用两个数的加法和减法逻辑Web服务程序:
⏹客户端输入3个数字,BPEL流程接收请求,先调用加法Web服务,获得结果后,再将结果和第三个参数,作为减法Web的输入,调用减法Web服务,获得预期结果,并返回客户。
⏹例如:
输入:
3,6.5,2
☐首先调用AddWebservice3+6.5=9.5
☐然后调用SubWebservice9.5-2=7.5
☐返回客户7.5
编写调用客户端程序,调用CaculateComputerBPEL,并输出预期的计算结果。
二、实验设备(环境)及要求
1、Java运行环境JDK1.7.0_05;
2、Servlet容器环境Tomcat6.0.43;
3、BPEL流程执行引擎工具ActiveBPEL或者ApacheODE1.3.3;
4、Web服务客户端运行环境AXIS21.6.2类库
三、实验原理
BPEL流程引擎原理如图1所示。
图1BPEL流程引擎
BPEL引擎将根据BPEL模板定义文件的流程定义,解释BPEL描述文档,生成相应的流程实例。
当客户端调用BPEL流程服务时,流程引擎创建流程实例,并且通过持久化机制来存储流程实例的中间状态,当需要调用外部服务合作伙伴(ServicePartner)的服务,流程引擎将创建相应的SOAP消息,并更加其调用实例进行分发,和外部Web服务进行交互。
四、实验内容与步骤
1、搭建BPEL流程执行引擎平台环境
分别安装Java运行环境、Servlet容器运行环境、BPEL流程执行引擎运行环境。
下载Apache-ODE1.3.3免安装文件,将文件解压到E盘根目录下,AXIS2文件地址为E:
\apache-ode-war-1.3.3。
将apache-ode-war-1.3.3.zip文件解压,将目录中的ode.war文件放到E:
\apache-tomcat-6.0.43\webapps目录中。
测试Web服务器是否运行正常,运行Tomcat(startup.bat),打开浏览器进入页面ode/,如果在浏览器中显示ODE运行控制台,则表示运行正常。
结果见图2所示。
图2ODE在Tomcat上的部署
2、编写服务类和AXIS2的服务发布描述文件services.xml
3、服务实现类和services.xml打包
services.xml文件放在META-INF目录下,.class文件放在同包名的目录下。
4、服务部署
将上一过程中打包好的.aar文件拷贝到%tomcat%下的\webapp\axis2\WEB-INF\services目录下,将其发布成web服务。
5、根据加法服务和减法服务的WSDL描述,设计BPEL流程文件
5.1、在加法服务和减法服务的WSDL描述文档中添加PartnerLinkType的定义
加法服务中的PartnerLinkType定义
<
plnk:
partnerLinkTypename="
AddService"
>
<
rolename="
AddServiceProvider"
portType="
addPortType"
/>
/plnk:
partnerLinkType>
减法服务中的PartnerLinkType定义
SubService"
SubServiceProvider"
subPortType"
5.2、定义BPEL流程CaculateComputer的WSDL描述
CaculateComputer的WSDL描述
?
xmlversion="
1.0"
definitionsname="
CaculatorService"
targetNamespace="
"
xmlns:
tns="
plnk="
xmlns="
soap="
!
--~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
TYPEDEFINITION-ListoftypesparticipatinginthisBPELprocess
TheBPELDesignerwillgeneratedefaultrequestandresponsetypes
butyoucandefineorimportanyXMLSchematypeandusethemaspart
ofthemessagetypes.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~-->
types>
<
schemaattributeFormDefault="
unqualified"
elementFormDefault="
qualified"
xmlns="
<
elementname="
operator"
<
complexType>
<
sequence>
<
first"
type="
int"
second"
third"
/sequence>
/complexType>
/element>
result"
return"
/schema>
/types>
MESSAGETYPEDEFINITION-Definitionofthemessagetypesusedas
partoftheporttypedefintions
messagename="
CaculatorServiceRequestMessage"
partname="
param"
element="
tns:
/message>
CaculatorServiceResponseMessage"
PORTTYPEDEFINITION-Aporttypegroupsasetofoperationsinto
alogicalserviceunit.
--portTypeimplementedbytheCaculatorServiceBPELprocess-->
portTypename="
CaculatorServicePT"
operationname="
process"
inputmessage="
outputmessage="
/operation>
/portType>
bindingname="
CaculatorServiceBinding"
type="
soap:
bindingstyle="
document"
transport="
operationsoapAction="
input>
bodyuse="
literal"
/input>
output>
/output>
/binding>
servicename="
Caculator"
portname="
CaculatorPort"
binding="
addresslocation="
/port>
/service>
PARTNERLINKTYPEDEFINITION
CaculatorServiceProvider"
portType="
/definitions>
5.3、设计BPEL流程文件
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西工大 研究生 服务 计算 实验 BPEL