BPEL之贷款审批案例(2)

原创 2004年07月23日 09:22:00

BPEL之贷款审批案例(2)


我们把该例的业务流程定义拷在下面,进行说明:
<process name="loanApprovalProcess"
         targetNamespace="http://acme.com/loanprocessing"
         xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/"
         xmlns:lns="http://loans.org/wsdl/loan-approval"
         suppressJoinFailure="yes">

   <partnerLinks>
      <partnerLink name="customer"
               partnerLinkType="lns:loanPartnerLinkType"
               myRole="loanService"/>
      <partnerLink name="approver"
               partnerLinkType="lns:loanApprovalLinkType"
               partnerRole="approver"/>
      <partnerLink name="assessor"
               partnerLinkType="lns:riskAssessmentLinkType"
               partnerRole="assessor"/>
   </partnerLinks>

   <variables>
     <variable name="request"
                messageType="lns:creditInformationMessage"/>
     <variable name="risk"
                messageType="lns:riskAssessmentMessage"/>
     <variable name="approval"
                messageType="lns:approvalMessage"/>
     <variable name="error"
                messageType="lns:errorMessage"/>
   </variables>

   <faultHandlers>
      <catch faultName="lns:loanProcessFault"
             faultVariable="error">
         <reply   partnerLink="customer"
                  portType="lns:loanServicePT"
                  operation="request"
                  variable="error"
                  faultName="unableToHandleRequest"/>
      </catch>
   </faultHandlers>
                                                                 

   <flow>
      H:<flow>指明一组步骤应该并行地执行;在并行地执行的一组活动中,您可以通过使用链接(link)来指明执行顺序方面的约束。

      <links>
         <link name="receive-to-assess"/>
         <link name="receive-to-approval"/>
         <link name="approval-to-reply"/>
         <link name="assess-to-setMessage"/>
         <link name="setMessage-to-reply"/>
         <link name="assess-to-approval"/>
      </links>
     H:流程的每一步称为一个活动。存在以下一些基本活动:
     H:receive等待一条消息来响应由某人从外部进行调用的服务接口的操作
      <receive partnerLink="customer"
               portType="lns:loanServicePT"
               operation="request"
               variable="request" createInstance="yes">
         H:转移及其条件
         <source linkName="receive-to-assess"
            transitionCondition=
              "bpws:getVariableData('request','amount')< 10000"/>         
         <source linkName="receive-to-approval"
            transitionCondition=
              "bpws:getVariableData('request','amount')>=10000"/>
      </receive>
      H:invoke调用某个 Web 服务上的操作
      <invoke  partnerLink="assessor"
               portType="lns:riskAssessmentPT"
               operation="check"
               inputVariable="request" 
               outputVariable="risk">
         <target linkName="receive-to-assess"/>
         <source linkName="assess-to-setMessage"
            transitionCondition=
              "bpws:getVariableData('risk','level')='low'"/>
         <source linkName="assess-to-approval"
            transitionCondition=
              "bpws:getVariableData('risk','level')!='low'"/>
      </invoke>
      H:assign把数据从一个地方复制到另一个地方
      <assign>
         <target linkName="assess-to-setMessage"/>
         <source linkName="setMessage-to-reply"/>
         <copy>
            <from expression="'yes'"/>
            <to variable="approval" part="accept"/>
         </copy>
      </assign>
      H:invoke调用某个 Web 服务上的操作
      <invoke  partnerLink="approver"
               portType="lns:loanApprovalPT"
               operation="approve"
               inputVariable="request"
               outputVariable="approval">
         <target linkName="receive-to-approval"/>
         <target linkName="assess-to-approval"/>
         <source linkName="approval-to-reply" />
      </invoke>
      H:reply生成输入/输出操作的响应
      <reply   partnerLink="customer"
               portType="lns:loanServicePT"
               operation="request"
               variable="approval">
         <target linkName="setMessage-to-reply"/>
         <target linkName="approval-to-reply"/>
      </reply>
   </flow>

</process>

 

 

 

 

 

版权声明:本文为博主原创文章,未经博主允许不得转载。

Bpel简介及实例总结

1.  Bpel简介 面向 Web 服务的业务流程执行语言(BPEL 或 BPEL4WS)是一种使用 Web 服务定义和执行业务流程的语言。BPEL 使您可以通过组合、编排和协调 Web 服务自上而...
  • qq_22642239
  • qq_22642239
  • 2017年03月29日 14:06
  • 1858

贷款审批是否能通过,竟与这些因素有关!

贷款是一门学问,也是一个奇幻的世界,不同人群会在其中享受到不同的贷遇,有的是面对宽松的审批制度,有的则是面临严格的审批政策。如果你有点丈二的和尚摸不着头脑,不妨看看以下内容吧。 贷款金额的大小 ...
  • zhangzning
  • zhangzning
  • 2017年08月02日 16:26
  • 80

在Eclipse上配置bpel开发环境

1.前期准备 jdk1.6、Tomcat6.0、最新的Eclipse。(这里特殊说明一下,曾经试过jdk1.8以及jdk1.7,Tomcat7.x以及Tomcat8.x,发现在后面的开发过程中都会有...
  • yunixiang
  • yunixiang
  • 2015年03月03日 13:40
  • 1276

使用BPEL创建Web服务组合

为简单起见,本例的Web服务组合只调用一个Web Service API。 本文环境是:Eclipse Juno Release + JRE 1.7 + Tomcat 7.0.29 + BPEL +...
  • steveyg
  • steveyg
  • 2015年07月02日 23:00
  • 538

购房贷款没通过审批,首付款还能退回吗

买房最怕碰到一种情况,就是首付款已经交了,购房合同已经签了,但是购房贷款却因种种原因没有办理下来,由于现在房产价格昂贵,贷款没有审批下来大部分人都无法支付尾款,这时我们应该怎么办,已经交了的首付款还能...
  • tuotiandanbao
  • tuotiandanbao
  • 2018年01月16日 14:39
  • 101

ActiveBpel部署运行BPEL流程实例

本文接收使用ActiveBpel开发,部署和运行BPEL流程实例。     本文的例子工程和服务工程请见附件。     1. 安装ActiveBpel5.0.2     要安装ActiveBpe...
  • qq_22642239
  • qq_22642239
  • 2017年03月23日 17:00
  • 352

【R语言 算法设计】信用贷款余额计算

#####设置 rm(list = ls()) options(scipen =20)########################step0:读取数据#######################...
  • u013421629
  • u013421629
  • 2017年06月13日 09:55
  • 1064

C语言:房贷计算器(等额本息与等额本金对比计算器)

程序主要为等额本息与等额本金两种贷款方式的对比 使用了文件流,结果均存在文件”SavedLoan.txt”里 图片略多,这次会贴到代码后面#include #include #include//...
  • YangZuo_Chester
  • YangZuo_Chester
  • 2017年08月05日 18:07
  • 744

厦门住房贷款可“商转公” 需满足5大条件

本报讯 厦门市住房公积金管理中心昨天宣布,根据最新出台的《厦门市商业性住房贷款转住房公积金贷款实施办法》,今后在厦门购买自住住房且已办理的商业性住房贷款(不含住房公积金个人住房组合贷款及房屋抵押贷款)...
  • fishmai
  • fishmai
  • 2016年09月01日 12:57
  • 1586

从原理分析审批流表单配置功能使用的问题

在工作流应用中,为用户提供了审批表单自定义或可配置功能,这类灵活、可配置的审批单,往往是服务于事件审批流,不适用于数据处理流程。为什么呢?先用一种解决方案进行原理分析。...
  • xiaoyw
  • xiaoyw
  • 2014年02月21日 15:46
  • 2334
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:BPEL之贷款审批案例(2)
举报原因:
原因补充:

(最多只允许输入30个字)