关于 BPEL 设计器中的变量
另请参见
BPEL 编程中使用的变量与它们在其他编程语言中所起的作用是相同的:这些变量保存临时值、构成表达式的一部分,或者作为参数传递给外部伙伴。通常,发送到伙伴服务或从中接收的每条消息都需要一个变量。BPEL 设计器支持以下类型的变量:
- WSDL 消息类型。这些变量与流程导入的 WSDL 文件中定义的 Web 服务消息类型相对应。在 BPEL 文件 (.bpel) 中,这些变量必须为 messageType 属性指定值。消息类型变量用于保存流程与其伙伴服务之间交互的数据。
- XML 架构类型。这些变量与“简单”或“复杂”的 XML 架构数据类型相对应。XML 架构类型本身是在导入到流程中的 XML 架构文件 (.xsd) 或 WSDL 文件中定义的。在 BPEL 文件中,这种类型的变量必须为 type 属性指定值。
- XML 架构元素。这些变量对应于 XML 架构元素。XML 架构元素本身是在导入到流程中的 XML 架构文件 (.xsd) 或 WSDL 文件中定义的。在 BPEL 文件中,这种类型的变量必须为 element 属性指定值。
- 内置类型。这种类型的变量是在 XML 架构规范中定义的标准简单类型。
全局变量和局部变量
在 Process 根元素中定义的变量是全局变量,它们在整个流程中具有全局可视性。但是,在特定 Scope 内定义的变量仅在该 Scope 以及所有嵌套的 Scope 内可见。这些变量称为局部变量。为内部 Scope 元素定义的变量将隐藏上一级定义的同名变量。
在相同 Scope 内定义的所有变量中,变量名称必须是唯一的。
使用变量
请执行以下基本步骤来使用变量:
- 为 Process 或 Scope 元素定义变量。
- 选择要作为特定元素的输入/输出变量的变量。例如,可以为调用、接收和回复活动使用消息类型变量。
复制变量数据并创建表达式
可以使用 BPEL 映射器在变量之间复制数据。有关复制数据的详细信息,请参见创建 BPEL 映射。
通过使用 BPEL 映射器,还可以为需要 XPath 1.0 表达式的业务流程元素创建此表达式。
重构
BPEL 设计器会自动将定义的变量的名称与其使用实例进行同步。例如,在重命名变量时,将自动调整它的所有使用实例以反映新名称,其中包括在 XPath 表达式内使用此变量名称的使用实例。有关 BPEL 设计器中重构规则的详细信息,请参见在 BPEL 流程中进行重构。
- 另请参见
- 创建变量
- 关于 BPEL 映射器
- BPEL 设计器导航:BPEL 逻辑视图
法律声明