正 文

实现动态 BPEL 流程


www.7dspace.com  更新日期:2006-1-15 2:12:46  七度空间


  5. 配置输入数据 loanInput。

  通常,您将修改 MyDL.wsdl 文件来从用户那里获得贷款输入数据。此处为简单起见,您只需硬编码一个 assign 来填充 loanInput 变量。将 assign 置于 receiveInput 动作之后并创建一个将值“123456789”(这是一个字符串,而非数字,因此不要忘了为它加上引号)放入 loanInput 的 SSN 元素中的复制规则:

<assign name="PopulateSSN">
<copy>
<from expression="'123456789'"/>
<to variable="loanInput" part="payload" query="/ns2:loanApplication/ns2:SSN"/>
</copy>
</assign>

  6. 创建 partnerReference 变量。

  在 Structure 窗口中,展开 Variables 树,然后展开 Process 并选择 Variables 项(参见图 3)。

  图 3 展开“Variables”树

  右键单击 Variables 并选择 Create Variable...。将变量名设为“partnerReference”,并将类型设为“Element”。单击元素框旁边的手电筒图标显示类型选择器。在 Project WSDL Files → LoanService.wsdl → Inline Schemas → schema 下找到类型“EndpointReference”(参见图 4)。

  图 4 选择“EndpointReference”

  7. 设置 partnerReference 变量。

  在 DynamicLoanService invoke 前面创建另一个 assign。使用此 assign 设置 partnerReference 变量。最初,您将它硬编码为 UnitedLoan 服务,但您将在下个部分中把它变为动态。

  此处,您可以通过重新格式化 EndpointReference xml 数据避免在 DynamicPartnerLink 示例中遇到的问题。创建一个用这个空 EndpointReference 填充 partnerReference 变量的复制规则:

<EndpointReference xmlns="http://schemas.xmlsoap.org/ws/2003/03/addressing"
xmlns:ns1="http://services.otn.com">
<Address/>
<ServiceName/>
</EndpointReference>

  在复制规则的“from”块中,在输入以上信息之前确保选择类型“XML Fragment”。由于在把 partnerReference 变量复制到 DynamicLoanService 合作伙伴链接时将其视为单独的 XML 文档,因此执行此复制才能为 partnerReference 建立命名空间信息。否则,在试图将 partnerReference 变量指定给合作伙伴链接时将发生一个空指针异常。

7页,页码:[1] [2] [3] [4] [5] [6] [7] 

上一篇:SOA 重用工程
下一篇:ADO.NET连接池超时
标题:实现动态 BPEL 流程 作者: 来源:Oracle
收藏此页】【打印】【关闭
站 内 搜 索
 

热 点 导 读
特 别 推 荐