Hello, 

I am having some problems migrating to Camel 2.20.2 from 2.17.4.  I have 
blueprint configuration:

                <cm:property-placeholder 
                                persistent-id=“audit.log” 
                                update-strategy="reload” 
                                placeholder-prefix="#{" placeholder-suffix="}”>

                        <cm:property name=“startDelaySeconds" value="600" />
                        <cm:property name="cron" value="0 0/30 * * * ?" />
                </cm:default-properties>

A component configuration (in this case for Quartz2, but I don’t think this is 
related to Quartz2):

        <bean id="audit-log-reaper-quartz" 
class="org.apache.camel.component.quartz2.QuartzComponent">
                <property name="startDelayedSeconds" 
value="#{startDelaySeconds}" />
        </bean>

Then use this in a route:

        <route id="reaper-scheduler">
                <from uri="audit-log-reaper-quartz://reaper?cron={{cron}}" />
                ...

When I run this (Karaf 4.2.5) an exception is thrown:

org.osgi.service.blueprint.container.ComponentDefinitionException: Name 
audit-log-reaper-quartz is already instanciated as null and cannot be removed.
        at 
org.apache.aries.blueprint.container.BlueprintRepository.removeRecipe(BlueprintRepository.java:131)
 [38:org.apache.aries.blueprint.core:1.8.3]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.updateUninstantiatedRecipes(BlueprintContainerImpl.java:572)
 [38:org.apache.aries.blueprint.core:1.8.3]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.processProcessors(BlueprintContainerImpl.java:559)
 [38:org.apache.aries.blueprint.core:1.8.3]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:394)
 [38:org.apache.aries.blueprint.core:1.8.3]
        at 
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:275)
 [38:org.apache.aries.blueprint.core:1.8.3]


This was working fine in Camel 2.17.4.  Interestingly,  if I remove property 
place holder:

        <bean id="audit-log-reaper-quartz" 
class="org.apache.camel.component.quartz2.QuartzComponent">
                <property name="startDelayedSeconds" value="600" />
        </bean>

Then it works fine, no errors.  So this seems to be related to the property 
placeholders.  Has anybody seen this? 
I appreciate any insight on how to solve this problem.

Best regards,
Alex soto



Reply via email to