2015-11-20 5 views
0

мы используем Jboss fuse 6.2 along with technical stack blueprint,camel ,activeMQ and Mybatis.как настроить внешнюю properfiles в OSGI

Мы должны знать о том, как настроить файлы свойства в OSGI, , как мне известно, мы могли настроить .cfg файлов, но есть любой простейший способ использовать как пружина, конфигурирующая настройку.

В нашем коде мы читаем из файлов свойств. используя namespace ext: proeprtyplaceHolder, дающий идентификатор и значения bean-компонента, которые мы даем. Помочь предоставить простейший способ прочитать файлы свойств

ответ

1

Существует несколько способов добавить конфигурацию, поскольку службы OSGi могут получить доступ к конфигурации через службу ConfigurationAdmin. Проект также может получить доступ к значениям свойств над ним. JBoss предохранитель с использованием karaf, поэтому вы можете использовать следующие методы.

(Существует несколько цитат из http://www.liquid-reality.de/display/liquid/2011/09/23/Karaf+Tutorial+Part+2+-+Using+the+Configuration+Admin+Service)

Конфигурации с Концепцией

Интеграция с нашим классом компонента в основном простое определением компонента, где мы определяем название свойство и присвоить метку-заполнитель, который будет разрешено с помощью службы config admin. Единственная особенность - метод init. Это используется, чтобы дать нам возможность реагировать после того, как все изменения были сделаны, как в примере с чистым OSGi. Для проекта нам не нужны никакие зависимости maven, так как наш Java-код является чистым Java-компонентом. Контекст синтаксиса просто активируется, помещая его в каталог OSGI-INF/blueprint и загружая загружаемый чертеж. Поскольку проект всегда загружен в Karaf, нам больше ничего не нужно.

<cm:property-placeholder persistent-id="ConfigApp" update-strategy="reload" > 
    <cm:default-properties> 
     <cm:property name="title" value="Default Title"/> 
    </cm:default-properties> 
</cm:property-placeholder> 

<bean id="myApp" init-method="refresh"> 
    <property name="title" value="${title}"></property> 
</bean> 

После того, как вы можете поместить CFG файл (который является стандартным Java свойств файла) для т.д. karaf или развернуть каталог с именем данного персистирующего идентификатора, который MyApp в нашем примере. (Например: /etc/ConfigApp.cfg)

title=Configured title