Hi Russell,

thanks for looking into this in such detail :-)

When I worked on the blueprint and xbean-blueprint conversion I couldn't figure 
out how to do this.  Since then I've started thinking that it would make more 
sense to configure activemq with Declarative Services rather than blueprint and 
configure the variable bits such as transports with the feature that produces a 
service for every Config Admin configuration (I get lost in the terminology, I 
think this is a managed service factory).  However I haven't had any time to 
look into this.

not much help but that's where my thinking is at the moment.

david jencks

On Jun 3, 2011, at 10:34 AM, Russell E Glaue wrote:

> ActiveMQ is not utilizing the config-substitutions in G3.0
> A patch was put in G2.2 do handle this, but the related code is removed in 
> G3.0.
> ActiveMQ is changed in the process of integrating blueprint. See GERONIMO-4475
> for the G2.2 patches from Ivan.
> 
> Since the GeronimoPropertyPlaceholderConfigurer in G2.2 was to make ActiveMQ 
> use
> the config-substitution, and now is removed in G3.0, I do not see in the code
> where the config-substitution is accounted for.
> 
> 
> In G2.2.2-SNAPSHOT
> The GBean Class:
> ~/branches/2.2/plugins/activemq/geronimo-activemq/src/main/java/org/apache/geronimo/activemq/GeronimoPropertyPlaceholderConfigurer.java
> The GBean Configuration:
> ~/branches/2.2/plugins/activemq/activemq-broker/src/main/resources/activemq.xml
> -
>    <!-- Allows us to use system properties as variables in this configuration
> file-->
>    <bean
> class="org.apache.geronimo.activemq.GeronimoPropertyPlaceholderConfigurer">
>         <property name="locations">
> 
> <!--<value>file://${activemq.home}/conf/credentials.properties</value>-->
> 
> <value>${activemq.geronimo.home.url}/var/config/config-substitutions.properties</value>
>         </property>
>         <property name="systemPropertiesMode">
>            <value>2</value>
>         </property>
>    </bean>
> -
> 
> In G3.0-SNAPSHOT
> ~/trunk/plugins/activemq/activemq-broker-blueprint/src/main/resources/OSGI-INF/blueprint/activemq.xml
> -
>    <cm:property-placeholder id="property-placeholder"
> persistent-id="blueprint-activemq-placeholder" placeholder-prefix="${"
> placeholder-suffix="}" ignore-missing-locations="true">
>        <cm:default-properties>
>            <cm:property name="activemq.brokerName" 
> value="DefaultActiveMQBroker"/>
>            <cm:property name="activemq.data" value="var/activemq"/>
>            <cm:property name="serverHostname" value="localhost"/>
>            <cm:property name="activemq.port" value="61616"/>
>            <cm:property name="portOffset" value="0"/>
>        </cm:default-properties>
> 
> <cm:location>file:$(karaf.base)/etc/blueprint-activemq-placeholder.cfg</cm:location>
>    </cm:property-placeholder>
> -
> As I mentioned in a previous thread on the user list, the
> file:$(karaf.base)/etc/blueprint-activemq-placeholder.cfg is ignored. I tried 
> to
> change the ActiveMQ values there in
> GERONIMO_HOME/etc/blueprint-activemq-placeholder.cfg, but ActiveMQ did not use
> the new configuration I set.
> (I am testing with G3.0-20110603-snapshot)
> 
> So the question is, what has to be done in G3.0-SNAPSHOT to make ActiveMQ 
> apply
> settings from the config-substitutions file?
> 
> -RG

Reply via email to