簡體   English   中英

如何在Apache Camel 2.12中重新加載屬性文件?

[英]How to reload a properties file in Apache Camel 2.12?

我想做兩件事:將屬性加載到bean中,並在更新屬性時更新bean。

我使用JBoss Fuse 6.1來安裝我的應用程序包,並在服務器上有一個屬性文件,我需要閱讀一些配置。 這些屬性具有以下行:

mediaTypeList=JSON,DOCX,TXT

我有一個Java Bean,它是file屬性的鏡像:

public class MediatType {

    private List<String> mediaTypeList;

    // GETTERs and SETTERs

}

屬性mediaTypeList指示應用程序允許的HTTP MediaType列表,並且該列表可能會隨着時間的推移進行更新,因此應用程序必須查看更改。

該應用程序接收文件上傳請求,並且只有在允許文件類型的情況下,才能上傳文件。 為了驗證這一點,我需要使用bean讀取屬性文件。

我使用Apache Camel 2.12並通過Java DSL配置路由。 我也閱讀有關使用PropertyPlaceholder在bean中加載屬性的內容,但這不符合我的要求。

有沒有辦法使用Apache Camel PropertyPlaceholder滿足以上要求? 還是有另一種方式?

問候,

在藍圖文件中,使用cm:property-placeholder並創建一個名稱為sample.cfg的屬性文件,並將其放置在$ FUSE_HOME / etc文件夾中

<cm:property-placeholder persistent-id="sample"
update-strategy="reload">
</cm:property-placeholder>

在駱駝路線中,您可以使用

<from uri="timer:foo?period={{period}}" />

暫無
暫無

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

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