Как прочитать значение из файла свойств, чтобы задать значение атрибута xml-тега Spring или Blueprint

#properties #apache-camel #jbossfuse #spring-camel #blueprint

Вопрос:

Я использую XML-файлы Apache camel blueprint для определения маршрутов верблюдов с помощью контейнера предохранителей JBoss.

но эти верблюжьи маршруты требовали подключения к базе данных для выполнения некоторых операций, и для подключения к базе данных мы используем «ссылку» для поиска службы osgi, которая экспортируется из какого-либо другого пакета или схемы в том же контейнере jboss fuse.

Теперь, чтобы получить ссылку, я использую ссылочный тег следующим образом:

 <reference id="dataSource.ref" interface="javax.sql.DataSource" filter="(osgi.jndi.service.name=${dataSource.jndi})"/>
 

DataSource.jndi настроен в файлах свойств/конфигурации правильно, и мы можем считывать другие свойства из того же файла свойств.

Проблема в том, используем ли мы эти свойства внутри тега, как эта информация о брокере:

 <bean class="org.apache.activemq.ActiveMQConnectionFactory" id="jmsConnectionFactory">
    <property name="brokerURL" value="${broker.url}"/>
    <property name="userName" value="${broker.user}"/>
    <property name="password" value="${broker.password}"/>
</bean>
 

Он работает очень хорошо, но при чтении значения свойства DataSource.jndi внутри атрибута фильтра ссылочного тега не работает.

Я попробовал несколько возможностей, таких как:

Но ничего не работает, и всегда я получаю ошибки ниже:

не удалось запустить проект из-за неразрешенных зависимостей [(amp;(osgi.jndi.service.name=${Источник данных.jndi})(Класс объектов=javax.sql.источник данных))]

не удалось запустить проект из-за неразрешенных зависимостей [(amp;(osgi.jndi.service.name=${{Источник данных.jndi}})(Класс объектов=javax.sql.источник данных))]

не удалось запустить проект из-за неразрешенных зависимостей [(amp;(osgi.jndi.service.name={{Источник данных.jndi}})(Класс объектов=javax.sql.источник данных))]

Поэтому вопрос только в том, как мы можем использовать значение из файла свойств для использования в атрибуте тега spring или blueprint, если я использую постоянное значение, все работает нормально, но нам не нужно постоянное значение.