可指定属性通过 HTTP 采用 XML 或 JSON 文件中的值。然后,运行进程时,服务器会显示该文件中的值列表作为提示。
开始之前
包含该属性的值的 XML 或 JSON 文件在可从
IBM® UrbanCode Deploy 访问的服务器上。可通过若干不同方式来设置此文件的格式。还必须使用三个参数来确定值的路径。示例文件附带这些路径参数的示例。
设置文件格式的最简单方法是为该属性提供简单值列表,如以下示例中所示:
<company>
<employee>Alice</employee>
<employee>Bob</employee>
<employee>Chris</employee>
<company>
对于 XML 文件,使用 XPath 来指定值的路径。在先前的 XML 文件中,
基本路径参数为 XPath 表达式
//company/employee,
值路径参数和
标签路径参数为空白。
以下示例显示等效 JSON 文件:
{
company: {
employee: [
"Alice",
"Bob",
"Chris"
]
}
}
在先前的 JSON 文件中,
基本路径参数为
company.employee,
值路径参数和
标签路径参数为空白。
可在文件中包括不同标签和值信息。例如,以下 XML 文件包括名称和标识编号。
<company>
<employee>
<name>Alice</name>
<id>1</id>
</employee>
<employee>
<name>Bob</name>
<id>2</id>
</employee>
<employee>
<name>Chris</name>
<id>3</id>
</employee>
</company>
在此情况下,
基本路径参数为 XPath 表达式
//company/employee。
值路径参数为显示相对于基本路径的值路径的 XPath 表达式;在此情况下,表达式为
./id。同样,
标签路径参数为显示相对基本路径的标签路径的 XPath 表达式;在此情况下,表达式为
./name。
以下 JSON 文件等价于先前的 XML 文件:
{
company: {
employees: [
{ name: "Alice", employee.id: 1 },
{ name: "Bob", employee.id: 2 },
{ name: "Chris", employee.id: 3}
]
}
}
在此情况下,
基本路径参数为
company.employees。
值路径参数为
employee\.id,
标签路径参数为
name。
注: 对 JSON 文件指定路径时,使用反斜杠来对属性名中的句点进行转义(如先前示例中的值路径参数)。
在 XML 文件中使用属性时,使用
@
字符在 XPath 中指定属性。例如,以下 XML 文件的属性中具有值:
<company>
<employee id="1">Alice</employee>
<employee id="2">Bob</employee>
<employee id="3">Chris</employee>
<company>
在此情况下,
基本路径参数为 XPath 表达式
//company/employee。
值路径参数为
./@id,
标签路径参数为句点 (
.)。
关于此任务
可在属性定义(例如,组件环境属性)中使用这些远程属性值,但不能在常规属性(例如,系统属性、应用程序属性或组件属性)中使用这些值。
过程
- 创建属性定义。 例如,单击组件,转至配置选项卡,单击环境属性定义,然后单击添加属性。
- 如常指定名称、描述、标签、模式和必需字段。
- 在类型列表中,选择 HTTP 选择(对于单个属性值)或选择 HTTP 多选以允许多个属性值。 将显示一些新字段。
- 指定以下字段。 这些字段特定于外部文件中的参数。
- URL
- 指定外部 XML 或 JSON 文件的 URL。
- 用户名
- 如果 URL 需要用户名,请在此处指定。
- 密码
- 如果 URL 需要密码,请在此处指定。
- 数据格式
- 指定文件类型:JSON 或 XML。
- 基本路径
- 对于 XML 文件,指定数据的 XPath 表达式。对于 JSON
文件,指定数据的路径(通过 JSON 属性),路径之间用句点分隔 (.)。请参阅此页面顶部的示例。
- 值路径
- 指定参数值的路径(相对于基本路径参数)。
- 标签路径
- 指定参数标签的路径(相对于基本路径参数)。
- 缺省值
- 指定参数的缺省值。
- 单击保存。
结果
现在运行进程时,“
运行进程”窗口会包括用于从外部文件检索值的参数。