BPEL之贷款审批案例(1)

王朝java/jsp·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

说明:本文意译自BPEL1.1规范16.2节。

本文讨论一个简单的贷款审批的WEB服务的例子。在该例子中,客户发送贷款审批请求,包括客户个人信

息和贷款金额。贷款审批的WEB服务利用该信息运行一个简单流程,得到“同意贷款”或“拒绝贷款”的

结果。对于低于10000美元的贷款和有良好信用的客户,审批是自动的。对于高额贷款和信用不确定的客

户,我们需要用到另外两个WEB服务提供的功能。“风险评估服务”用来查询某个个人的信用风险,“专

家评估服务”用来获得专家对该项目的具体评估意见。

1。服务描述

我们假定已经存在xmlns:lns="http://loans.org/wsdl/loan-approval",服务描述文件如下:

<definitions

targetNamespace="http://loans.org/wsdl/loan-approval"

xmlns="http://schemas.xmlsoap.org/wsdl/"

xmlns:xsd="http://www.w3.org/2001/XMLSchema"

xmlns:plnk="http://schemas.xmlsoap.org/ws/2003/05/partner-link/"

xmlns:lns="http://loans.org/wsdl/loan-approval">

H:信用信息消息。消息相当于我们的值对象。

<message name="creditInformationMessage">

<part name="firstName" type="xsd:string"/>

<part name="name" type="xsd:string"/>

<part name="amount" type="xsd:integer"/>

</message>

H:审批消息

<message name="approvalMessage">

<part name="accept" type="xsd:string"/>

</message>

H:风险评估消息

<message name="riskAssessmentMessage">

<part name="level" type="xsd:string"/>

</message>

H:错误消息

<message name="errorMessage">

<part name="errorCode" type="xsd:integer"/>

</message>

H:把portType理解为我们的OO中的方法吧!它指定了输入,输出,出错处理。

<portType name="loanServicePT">

<operation name="request">

<input message="lns:creditInformationMessage"/>

<output message="lns:approvalMessage"/>

<fault name="unableToHandleRequest"

message="lns:errorMessage"/>

</operation>

</portType>

<portType name="riskAssessmentPT">

<operation name="check">

<input message="lns:creditInformationMessage"/>

<output message="lns:riskAssessmentMessage"/>

<fault name="loanProcessFault"

message="lns:errorMessage"/>

</operation>

</portType>

<portType name="loanApprovalPT">

<operation name="approve">

<input message="lns:creditInformationMessage"/>

<output message="lns:approvalMessage"/>

<fault name="loanProcessFault"

message="lns:errorMessage"/>

</operation>

</portType>

H:partnerLinkType用来区分角色。

<plnk:partnerLinkType name="loanPartnerLinkType">

<plnk:role name="loanService">

<plnk:portType name="lns:loanServicePT"/>

</plnk:role>

</plnk:partnerLinkType>

<plnk:partnerLinkType name="loanApprovalLinkType">

<plnk:role name="approver">

<plnk:portType name="lns:loanApprovalPT"/>

</plnk:role>

</plnk:partnerLinkType>

<plnk:partnerLinkType name="riskAssessmentLinkType">

<plnk:role name="assessor">

<plnk:portType name="lns:riskAssessmentPT"/>

</plnk:role>

</plnk:partnerLinkType>

</definitions>

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航