簡體   English   中英

使用Apache Camel藍圖-需要將屬性持久保存在容器中並且獨立

[英]Using Apache Camel Blueprint - need to persist properties inside container and standalone

我有一個使用藍圖和Camel PropertiesComponent進行配置的駱駝路線,我可以通過'mvn camel:run'獨立運行它,也可以將其安裝到Karaf容器中。 兩者都能很好地工作,並發現其特性並將其注入到路線中。

我無法弄清楚的是如何在運行時更改屬性時將其持久化 (例如,我想在路線停止/關閉時設置一個標記,然后在路線開始時重新讀取)。

我已經閱讀了有關OSGi ConfigAdmin的信息-但這似乎不支持持久屬性。 我還閱讀了有關OSGi首選項服務(它支持持久性)的信息- 但是如何實現此功能,以便可以獨立運行它或在容器中運行它? 這將要求駱駝路線對服務進行引用,從而取決於OSGi?

有沒有一種方法可以抽象化首選項服務,使其獨立於容器服務而不會依賴它?

提前致謝。

OSGi中的ConfigurationAdmin簡編服務確實支持持久屬性。 實際上,默認情況下它是這樣做的(數據最終存儲在捆綁包緩存中,因此您需要確保在每次重新啟動時都不會擦除數據,這仍然是不習慣的做法)。

如果您使用Apache Felix的產品,甚至可以選擇:

  1. 重新配置數據保留的位置。
  2. 如果要使用數據庫或其他內容,請提供自己的存儲后端。

請參閱: http : //felix.apache.org/documentation/subprojects/apache-felix-config-admin.html

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM