WSO2 ESB:从注册表中获取地址端点 URI

WSO2 ESB: Get Address Endpoint URI from registry

我想在注册表中定义我的 URL,这样我就可以在不同环境之间更改它,而无需重新部署 CAR 文件。我过去曾成功地为 HTTP 端点完成了此操作,但是对于地址端点,我无法让它工作。

我通常会怎么做,是在 API.xml 文件中声明 属性:

<property name="uri.var.my_EP" expression="get-property('registry', 'gov:/integration/endpoints/myapp/my_EP')" scope="default" type="STRING"/>

然后我只需在 endpoint.xml 文件中用我的 属性 替换硬编码的 URI:

<http method="post" uri-template="{uri.var.my_EP}">

如果我在地址端点上执行以下操作,我会收到“系统无法从 {uri.var.my_EP} 推断传输信息”错误:

<address uri="{uri.var.my_EP}">

What/how 我必须在注册表中定义地址端点的 URI 吗?

如果您已正确存储在注册表中,则可以直接使用端点,如下所示:

<endpoint key="gov:/integration/endpoints/myapp/my_EP"/>

就我个人而言,对于端点,我使用 conf:/.. 存储库。