骆驼分裂的动态超时

时间:2017-07-15 17:49:52

标签: timeout apache-camel

我正在使用camel 2.13.2并想为camel设置超时:split可以从交换中读取。

静态超时效果很好。

<camel:split timeout="500">

但不是以下。假设我已将property.timeout设置为交换属性

<camel:split timeout="{{property.timeout}}">

我在服务器启动期间收到以下错误

Caused by: org.xml.sax.SAXParseException; lineNumber: 75; columnNumber: 67; cvc-datatype-valid.1.2.1: '{{property.timeout}}' is not a valid value for 'integer'.

无论如何,分裂的超时可以动态设置吗?

感谢您的帮助!

1 个答案:

答案 0 :(得分:2)

是的,您需要使用Camel网站中记录的prop前缀来指定。请参阅在XML DSL中使用任何属性的属性占位符部分:http://camel.apache.org/using-propertyplaceholder.html

这就变成了

<camel:split prop:timeout="{{property.timeout}}">

您需要记住在XML文件的顶部添加prop作为命名空间,例如

`xmlns:prop="http://camel.apache.org/schema/placeholder"`

但请查看该链接中的更多详细信息。