Я использую схему ActiveMQ для настройки пула JMS Connection Pool. Я также использую Camel для обслуживания некоторых функций.Овен Blueprint в Karaf - Может ли ссылка ссылаться на внешний файл свойств
Я использую org.apache.camel.spring.spi.BridgePropertyPlaceholderConfigurer
, чтобы разрешить использование файла внешних свойств при настройке файла camel-context
.
Есть ли аналогичные функции с использованием чертежей?
Так в основном, я хочу, чтобы заменить $ {server.address} со свойством я получаю из файла свойств в конфигурации ниже:
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0"
xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.0.0"
xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0"
xmlns:amq="http://activemq.apache.org/schema/core">
<bean id="activemqConnectionFactory" class="org.apache.activemq.ActiveMQConnectionFactory">
<property name="brokerURL"
value="nio://${server.address}" />
</bean>
<bean id="pooledConnectionFactory" class="org.apache.activemq.pool.PooledConnectionFactory">
<property name="maxConnections" value="8" />
<property name="connectionFactory" ref="activemqConnectionFactory" />
</bean>
<bean id="jmsConfig" class="org.apache.camel.component.jms.JmsConfiguration">
<property name="connectionFactory" ref="pooledConnectionFactory" />
<property name="concurrentConsumers" value="5" />
</bean>
<bean id="resourceManager" class="org.apache.activemq.pool.ActiveMQResourceManager"
init-method="recoverResource">
<property name="transactionManager" ref="transactionManager" />
<property name="connectionFactory" ref="activemqConnectionFactory" />
<property name="resourceName" value="activemq.localhost" />
</bean>
<bean id="xaConnectionFactory" class="org.apache.activemq.ActiveMQXAConnectionFactory">
<argument value="nio://${server.address}" />
</bean>
<bean id="connectionFactory" class="org.fusesource.jms.pool.JcaPooledConnectionFactory"
init-method="start" destroy-method="stop">
<property name="connectionFactory" ref="pooledConnectionFactory" />
<property name="name" value="activemq" />
</bean>
<reference id="transactionManager" interface="javax.transaction.TransactionManager" />
<service ref="pooledConnectionFactory" interface="javax.jms.ConnectionFactory">
<service-properties>
<entry key="name" value="localhost" />
</service-properties>
</service>
</blueprint>
Я добавил '<внутр: свойство-заполнитель заполнитель-префикс = "$ [" \t \t заполнитель-суффикс = "]"/>' вне camelcontext и пытался использовать karaf.home в внутри camelcontext. Но его сбоя загружает данные из этого местоположения. Я попытался как этот ' ' Разве мы не можем получить доступ к нему в camelcontext? –
tvshajeer