Чертеж Karaf OSGI cm: свойство-заполнитель не загружается из файла cfg

мой план содержит:

<cm:property-placeholder persistent-id="pool-service" update-strategy="reload">
    <cm:default-properties>
        <cm:property name="maxTotalPerKey" value="2" />
    </cm:default-properties>
</cm:property-placeholder>

Я разместил etc/pool-service.cfg, содержащий maxTotalPerKey=3

когда я развертываю jar, он выбирает значение 2. Если я прокомментирую cm:default-properties, произойдет сбой с исключением числового формата, поэтому cfg не читается.

Есть ли что-то, что мне не хватает (зависимость от maven, импорт, конфигурация и т. д.)?

Спасибо, Виктор


person Viktor D    schedule 12.02.2015    source источник


Ответы (1)


Файл конфигурации не может содержать -. Измените файл etc/PoolService.cfg для использования:

persistent-id="PoolService"
person Viktor D    schedule 12.02.2015
comment
Разве ваш файл конфигурации не должен называться так же, как пакет? т.е. package.bundle.version? Он должен соответствовать PID? - person Richard; 12.02.2015
comment
ну, постоянный идентификатор определяет имя файла конфигурации, поэтому его можно назвать как угодно. пакет pool-service.jar - person Viktor D; 13.02.2015
comment
Невероятный. После часов, потраченных на отладку аналогичного случая (тире в persistent-id) в нашем проекте, я наконец наткнулся на эту тему здесь. Спасибо, @ViktorD, что поделились этим решением! У кого заблокирована не грузящаяся конфигурация - наверное так и есть. - person buer; 24.07.2017