The actual code is well-formed, this was just error formatting the code for the post. I’ll try again:
<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:camel="http://camel.apache.org/schema/blueprint" xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0" xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0" xsi:schemaLocation=" http://www.osgi.org/xmlns/blueprint/v1.0.0 https://www.osgi.org/xmlns/blueprint/v1.0.0/blueprint.xsd”> <cm:property-placeholder persistent-id="audit.log" update-strategy="reload” placeholder-prefix="#{" placeholder-suffix="}"> <cm:default-properties> <cm:property name="audit-log.reaper.cron" value="0 0/30 * * * ?" /> <cm:property name="startDelaySeconds" value="600" /> </cm:default-properties> </cm:property-placeholder> > On Feb 22, 2018, at 9:56 PM, Quinn Stevenson <qu...@pronoia-solutions.com> > wrote: > > Is that really the XML? It’s not well formed - you start with a > cm:property-placeholder element and end with a cm:default-properties element. > >> On Feb 22, 2018, at 12:48 PM, Alex Soto <alex.s...@envieta.com> wrote: >> >> 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 >> >> >> >