Chow created KARAF-5410:
---------------------------
Summary: Bundle loaded before cfg file
Key: KARAF-5410
URL: https://issues.apache.org/jira/browse/KARAF-5410
Project: Karaf
Issue Type: Bug
Affects Versions: 4.0.9
Environment: I'm running a 4.0.9 version of Karaf.
The bundles are loaded with the help of feature:install.
The cfg file is loaded via a <configfile> and he's physically present into the
/etc
Reporter: Chow
When i restart karaf some times i've got this exception :
{code:java}
Exception:
org.osgi.service.blueprint.container.ComponentDefinitionException: Error
setting property: PropertyDescriptor <name: refreshDelay, getter: null, setter:
[class
com.plug.acquisition.service.configuration.AcquisitionConfigurationServiceImpl.setRefreshDelay(int)]
org.osgi.service.blueprint.container.ComponentDefinitionException:
org.osgi.service.blueprint.container.ComponentDefinitionException: Error
setting property: PropertyDescriptor <name: refreshDelay, getter: null, setter:
[class
com.plug.acquisition.service.configuration.AcquisitionConfigurationServiceImpl.setRefreshDelay(int)]
at
org.apache.aries.blueprint.container.ServiceRecipe.createService(ServiceRecipe.java:310)
at
org.apache.aries.blueprint.container.ServiceRecipe.internalGetService(ServiceRecipe.java:252)
at
org.apache.aries.blueprint.container.ServiceRecipe.internalCreate(ServiceRecipe.java:149)
at
org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)
at
org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:255)
at
org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:186)
at
org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:724)
at
org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:411)
at
org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:276)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
org.apache.aries.blueprint.container.ExecutorServiceWrapper.run(ExecutorServiceWrapper.java:106)
at
org.apache.aries.blueprint.utils.threading.impl.DiscardableRunnable.run(DiscardableRunnable.java:48)
at
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
at
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
Caused by: org.osgi.service.blueprint.container.ComponentDefinitionException:
Error setting property: PropertyDescriptor <name: refreshDelay, getter: null,
setter: [class
com.plug.acquisition.service.configuration.AcquisitionConfigurationServiceImpl.setRefreshDelay(int)]
at
org.apache.aries.blueprint.container.BeanRecipe.setProperty(BeanRecipe.java:963)
at
org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:929)
at
org.apache.aries.blueprint.container.BeanRecipe.setProperties(BeanRecipe.java:910)
at
org.apache.aries.blueprint.container.BeanRecipe.internalCreate2(BeanRecipe.java:844)
at
org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:811)
at
org.apache.aries.blueprint.di.AbstractRecipe$1.call(AbstractRecipe.java:79)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:88)
at
org.apache.aries.blueprint.di.RefRecipe.internalCreate(RefRecipe.java:62)
at
org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:106)
at
org.apache.aries.blueprint.container.ServiceRecipe.createService(ServiceRecipe.java:285)
... 21 more
Caused by: java.lang.NumberFormatException: For input string:
"$[acquisition.configuration.refresh.delay]"
at
java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
at java.lang.Integer.parseInt(Integer.java:569)
at java.lang.Integer.valueOf(Integer.java:766)
at
org.apache.aries.blueprint.container.AggregateConverter.convertFromString(AggregateConverter.java:284)
at
org.apache.aries.blueprint.container.AggregateConverter.convert(AggregateConverter.java:177)
at
org.apache.aries.blueprint.container.BlueprintRepository.convert(BlueprintRepository.java:411)
at
org.apache.aries.blueprint.utils.ReflectionUtils$PropertyDescriptor.convert(ReflectionUtils.java:396)
at
org.apache.aries.blueprint.utils.ReflectionUtils$MethodPropertyDescriptor.internalSet(ReflectionUtils.java:630)
at
org.apache.aries.blueprint.utils.ReflectionUtils$PropertyDescriptor.set(ReflectionUtils.java:380)
at
org.apache.aries.blueprint.container.BeanRecipe.setProperty(BeanRecipe.java:961)
{code}
Not all bundles are concerned by this behavior meaning that my cfg file has
been loaded after this bundle that has generated this exception.
When my JAR are in deploy i dont have this issue. Only when i deploy them using
the feature:install
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)