2017-05-25 46 views
0

我對形式的駱駝代碼片段:不能從性質completionInterval屬性(總標記的)分配值文件:駱駝

<aggregate strategyRef="aggregationStrategy" 
    completionSize="50" completionInterval="120000"> 
... 
</aggregate> 

我想通過以下來讀取屬性文件的屬性值鏈接http://camel.apache.org/properties.html

目前,我已經定義了propertyPlaceholder,通過它我可以通過屬性爲完成大小(通過引用它通過端點)分配值;如下

<propertyPlaceholder id="properties" location="classpath:file.properties" /> 
<endpoint id="compSize" uri="{{completion.size}}" /> 
... 

<aggregate strategyRef="aggregationStrategy" 
     completionInterval="120000"> 
    ... 
    <completionSize> 
     <simple>ref:compSize</simple> 
    </completionSize> 
    ... 
</aggregate> 

但是,如果我按照同樣的程序(作爲的<completionSize>)來設置completionInterval,它拋出一個錯誤,因爲我們沒有一個像標籤<completionInterval>

有沒有辦法通過屬性文件動態地爲completionInterval屬性賦值?

回答

0

可以在聚合

<aggregate ...> 

    <completionInterval> 
     <constant>{{somePropertyKeyHere}}</constant> 
    </completionInterval> 

它設置爲動態表達式或使用prop命名空間設置值記錄在使用屬性佔位符的XML DSL屬性的任何一種部分http://camel.apache.org/using-propertyplaceholder.html