0

我开始使用 Mule 并且有一些琐碎的问题。这里是其中之一。假设您存储了一个 url 的地址,以便稍后在属性文件的进程中调用。然后,您想使用指定此 url 的 http 端点。它工作正常,您只需输入地址:${URL_ADDRESS} 就可以了。

现在,如果您的 url 是在 flowVar 上计算并设置的,为什么下面的代码不起作用?

<http:outbound-endpoint exchange-pattern="request-response" method="GET" address="#[flowVars['URL_ADDRESS']]" doc:name="HTTP"/>

它抛出这个异常:

java.lang.IllegalArgumentException: Address '#[flowVars['URL_ADDRESS']]' for protocol 'http' should start with http://

为什么在编译时检查它?如何在运行时设置它?

4

2 回答 2

4

协议不能是动态的。您应该将出站端点更改为
<http:outbound-endpoint exchange-pattern="request-response" method="GET" address="http://#[flowVars['URL_ADDRESS']]" doc:name="HTTP"/>

于 2013-08-30T17:14:54.947 回答
0

您应该使用以下格式的流变量。#[FileName] 或 #[flowVars.FileName]

于 2015-12-03T12:25:27.530 回答