2017-08-22 27 views
1

從2015年的Apache Camel 2.16.3開始,所有的.beanRef Java DSL routebuilder方法have been deprecatedCamel .beanRef已棄用 - 現在如何訪問Java DSL路由中的容器管理的bean?

不幸的是,即使在2017年the official Camel documentation仍然表示使用不贊成的.beanRef方法。雖然API說使用.bean(...)方法,所有這些方法實例化一個新版本的bean或期望現有的一個通過。

我的問題是,如何使用這些方法Spring框架在Java DSL路由中傳遞Spring管理的bean,Camel的官方建議是什麼?

This similar question在2015年被問到,但答案與我關於託管bean的具體問題無關。

回答

2

使用.bean("beanRef"),因爲如果ProcessorDefinition.bean(Object bean)方法的參數是一個字符串而不是駱駝將ref設置爲該bean。 (Relevant source from Camel

+0

Wow good catch,我希望他們能夠更新他們的文檔,使其更清晰,因爲我試圖避免挖掘他們的源代碼。謝謝您的幫助! –

+1

它被記錄在javadoc中 - https://github.com/apache/camel/blob/master/camel-core/src/main/java/org/apache/camel/model/ProcessorDefinition.java#L2769 - javadoc已啓動迄今與源代碼。帶有wiki的網站正在被替換爲未來的新網站和文檔,從源代碼中獲取文檔以最小化維護開銷 –

相關問題