2011-07-29 164 views
0

我想加載OSGi環境中的一個bundle的配置數據(FUSE ESB 4.3.1)。 Spring DM提供了配置管理的抽象,並允許讀取etc文件夾中的屬性文件。在OSGi中加載XML配置文件

我想要實現的是加載一個XML文件,因爲我需要一個比簡單屬性文件更復雜的配置。一個例子可以是:

<measurements> 
    <measurementsList name="First"> 
    <measurement>First-1</measurement> 
    <measurement>First-2</measurement> 
    </measurementsList> 
    <measurementsList name="Second"> 
    <measurement>Second-1</measurement> 
    <measurement>Second-2</measurement> 
    <measurement>Second-3</measurement> 
    <measurement>Second-4</measurement> 
    </measurementsList> 
    ... 
</measurements> 

,然後分析它得到一個地圖>其中關鍵是measurementsList的名稱和值是測量的名稱列表。

我該怎麼做OSGi?我需要將我的文件放在哪裏才能從某個包中訪問?

最良好的祝願, 斯特凡

回答

0

保存在單獨的XML文件中的配置。將配置管理員管理的屬性中的文件名或URL作爲字符串值傳遞。在可配置對象中,打開文件並在其中讀取/處理XML內容。

0

我會將XML文件放在servicemix下的etc文件夾下,並在spring DM config admin中傳遞相對路徑。

<bean ...> 
    <osgix:managed-properties persistent-id="com.sample.your.config.location.path" /> 
    <property name="config-path" value="etc/config.xml"/> 
</bean> 

相對路徑工作相對關ServiceMix的目錄