BPEL之贷款审批案例(2)

本文介绍了一个基于BPEL的贷款审批业务流程实例。详细解释了如何通过BPEL定义流程,包括接收请求、风险评估、审批及回复等关键步骤。

BPEL之贷款审批案例(2)


我们把该例的业务流程定义拷在下面,进行说明:

         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">

  
     
               partnerLinkType="lns:loanPartnerLinkType"
               myRole="loanService"/>
     
               partnerLinkType="lns:loanApprovalLinkType"
               partnerRole="approver"/>
     
               partnerLinkType="lns:riskAssessmentLinkType"
               partnerRole="assessor"/>
  

  
    
                messageType="lns:creditInformationMessage"/>
    
                messageType="lns:riskAssessmentMessage"/>
    
                messageType="lns:approvalMessage"/>
    
                messageType="lns:errorMessage"/>
  

  
     
             faultVariable="error">
        
                  portType="lns:loanServicePT"
                  operation="request"
                  variable="error"
                  faultName="unableToHandleRequest"/>
     
  
                                                                 

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

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

 

 

 

 

 




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值