2017-01-05 11 views
0

我有這樣一行像這樣在我的流程:騾:提取連接器裁判性文件

<jms:inbound-endpoint queue="${queue.name}" connector-ref="${inbound.connector}" doc:name="Inbound Endpoint"> 

凡「$ {} inbound.connector」屬性指的是串在我的屬性文件:

inbound.connector=Active_MQ 

我這樣做的原因是因爲connector-ref會因環境而異。有時它會是一個Active_MQ連接器,有時它會是一個JMS連接器。

屬性文件位於src/main/resources下,因爲它應該是。我在屬性文件中讀取的流中有其他屬性,例如「queue.name」屬性。然而,由於某些原因,當我嘗試啓動騾子它返回一個錯誤說:

NoSuchBeanDefinitionException: No bean named '${inbound.connector}' is defined. 

據我所知道的連接器REF值只是一個字符串,所以這應該在理論工作。我不明白這個錯誤。 connector-ref其實不是一個字符串,這種方法是非法的?

回答

0

當應用程序啓動時,內部mule運行時會創建/初始化所有連接器對象(spring bean),如HTTP連接器,DATASOURCE連接器和各種其他連接器。所有這些連接器都只是一個彈簧豆,因爲Mule寫在Springframework的頂部。所以通過在需要對象的地方傳入字符串值是不可能的。