add null and empty check for FeaturesServiceImpl.readValue(String val) 
-----------------------------------------------------------------------

                 Key: FELIX-1645
                 URL: https://issues.apache.org/jira/browse/FELIX-1645
             Project: Felix
          Issue Type: Improvement
          Components: Karaf
            Reporter: Freeman Fang
            Assignee: Freeman Fang


to avoid the exception like
11:50:26,570 | ERROR | pool-2-thread-1  | FeaturesServiceImpl              | 
res.internal.FeaturesServiceImpl  509 | Error loading FeaturesService state
java.lang.NumberFormatException: For input string: ""
        at 
java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
        at java.lang.Long.parseLong(Long.java:424)
        at java.lang.Long.parseLong(Long.java:461)
        at 
org.apache.felix.karaf.features.internal.FeaturesServiceImpl.readValue(FeaturesServiceImpl.java:565)
        at 
org.apache.felix.karaf.features.internal.FeaturesServiceImpl.loadMap(FeaturesServiceImpl.java:545)
        at 
org.apache.felix.karaf.features.internal.FeaturesServiceImpl.loadState(FeaturesServiceImpl.java:501)
        at 
org.apache.felix.karaf.features.internal.FeaturesServiceImpl.start(FeaturesServiceImpl.java:406)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at 
org.apache.geronimo.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:206)
        at 
org.apache.geronimo.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:639)
        at 
org.apache.geronimo.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:517)
        at 
org.apache.geronimo.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:64)
        at 
org.apache.geronimo.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:212)
        at 
org.apache.geronimo.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:140)
        at 
org.apache.geronimo.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:603)
        at 
org.apache.geronimo.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:310)
        at 
org.apache.geronimo.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:211)
        at 
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417)
        at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269)
        at java.util.concurrent.FutureTask.run(FutureTask.java:123)
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:65)
        at 
java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:172)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:651)
        at 
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:676)
        at java.lang.Thread.run(Thread.java:613)
during runtime

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to