That makes more sense :-)

When I’ve seen this kind of stuff before, it’s usually that the initialization 
of bean that is a dependency of another bean fails.  I start at the first 
exception I see - that usually points me to the right place.

In this case, it’s acting like it can’t find a setter for the correct type - 
maybe that changed across Camel versions?

> On Feb 23, 2018, at 6:49 AM, Alex Soto <alex.s...@envieta.com> wrote:
> 
> 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
>>> 
>>> 
>>> 
>> 
> 

Reply via email to