1

我正在尝试使用 Callout Mediator 根据消息的属性调用两个端点之一(存储在注册表中)。我想这样做的方式本质上是连接一些属性以提供端点的路径,或者如果不可能,则使用 XPATH。

我知道,使用发送调解器,XPATH 是选择端点的可能选项,例如

<send xmlns:ns="http://ws.apache.org/ns/synapse">
  <endpoint key-expression="//ns:abc"/>
</send>

但是,此语法似乎不适用于 Callout Mediator。

不幸的是,我目前对这个问题的“解决方案”是有一个基于这个属性和 n 个案例的过滤器,其中 n 是我正在考虑的不同端点的数量。但是,如果我添加了一个新端点,我希望不需要更改序列 - 只是消息中的差异。

4

1 回答 1

1

这在 Callout Mediator 的当前实现中似乎是不可能的。

我最终决定编写自己的调解器。它本质上是 CalloutMediator 的副本,但添加了使用 xpath 作为端点的功能。

于 2013-11-06T16:29:05.760 回答