[ 
https://issues.apache.org/jira/browse/ARIES-2028?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Raymond Augé updated ARIES-2028:
--------------------------------
    Fix Version/s: component-dsl-1.2.3

> if a service leaves too quickly the dsl can  NPE
> ------------------------------------------------
>
>                 Key: ARIES-2028
>                 URL: https://issues.apache.org/jira/browse/ARIES-2028
>             Project: Aries
>          Issue Type: Bug
>          Components: Component DSL
>    Affects Versions: component-dsl-1.2.2
>            Reporter: Raymond Augé
>            Priority: Major
>             Fix For: component-dsl-1.2.3
>
>
> Example
> {code}
> [INFO] Bnd inferred -runee: JavaSE-1.8
> ! Found no fw implementation
> 13:32:35.816 [main] ERROR o.a.a.j.r.w.internal.Whiteboard - ServiceReference 
> CachingServiceReference {
> cachedProperties={osgi.jaxrs.application.select=null (cached), service.id=75, 
> objectClass=[javax.ws.rs.core.Feature], osgi.jaxrs.name=aries.shiro.authc, 
> osgi.jaxrs.extension.select=null (cached), service.ranking=null (cached), 
> osgi.jaxrs.whiteboard.target=null (cached)}
> serviceReference={javax.ws.rs.core.Feature}={service.id=75, 
> osgi.jaxrs.extension=true, service.bundleid=3, service.scope=prototype, 
> shiro.authc=true, osgi.jaxrs.name=aries.shiro.authc, 
> service.pid=org.apache.aries.jax.rs.shiro.authentication}
> } for extension produced error: {}
> java.lang.NullPointerException: null
>       at 
> org.apache.aries.jax.rs.whiteboard.internal.Whiteboard.lambda$null$59(Whiteboard.java:938)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$64(OSGi.java:599)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$64(OSGi.java:602)
>       at org.apache.aries.component.dsl.Publisher.apply(Publisher.java:28)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$75(OSGi.java:715)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$64(OSGi.java:602)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$64(OSGi.java:602)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$new$2(JustOSGiImpl.java:47)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$effects$65(OSGi.java:596)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$effects$65(OSGi.java:596)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$68(OSGi.java:674)
>       at org.apache.aries.component.dsl.Publisher.apply(Publisher.java:28)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$75(OSGi.java:715)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$new$2(JustOSGiImpl.java:47)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at 
> org.apache.aries.component.dsl.OSGi.lambda$recoverWith$76(OSGi.java:711)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$flatMap$69(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$68(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$new$2(JustOSGiImpl.java:47)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at 
> org.apache.aries.component.dsl.internal.BundleContextOSGiImpl.lambda$new$0(BundleContextOSGiImpl.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$flatMap$69(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at 
> org.apache.aries.component.dsl.internal.ChangeContextOSGiImpl.lambda$new$0(ChangeContextOSGiImpl.java:31)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at 
> org.apache.aries.component.dsl.OSGi.lambda$recoverWith$76(OSGi.java:711)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$effects$65(OSGi.java:596)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$effects$65(OSGi.java:596)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$effects$65(OSGi.java:596)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$effects$65(OSGi.java:596)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$68(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$new$2(JustOSGiImpl.java:47)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$flatMap$69(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$68(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$new$2(JustOSGiImpl.java:47)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$flatMap$69(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$68(OSGi.java:674)
>       at 
> org.apache.aries.jax.rs.whiteboard.internal.FilteredPublisher.publishIfMatched(FilteredPublisher.java:51)
>       at 
> org.apache.aries.jax.rs.whiteboard.internal.Registry.lambda$waitForService$1(Registry.java:66)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$flatMap$69(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.lambda$create$0(OSGiImpl.java:39)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$68(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$new$2(JustOSGiImpl.java:47)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$68(OSGi.java:674)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$new$2(JustOSGiImpl.java:47)
>       at 
> org.apache.aries.component.dsl.internal.OSGiImpl.run(OSGiImpl.java:50)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$68(OSGi.java:674)
>       at org.apache.aries.component.dsl.Publisher.apply(Publisher.java:28)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$66(OSGi.java:663)
>       at org.apache.aries.component.dsl.internal.Pad.publish(Pad.java:59)
>       at 
> org.apache.aries.component.dsl.internal.DistributeOSGiImpl.lambda$null$1(DistributeOSGiImpl.java:51)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$64(OSGi.java:602)
>       at org.apache.aries.component.dsl.Publisher.apply(Publisher.java:28)
>       at 
> org.apache.aries.component.dsl.internal.HighestRankingOSGi.lambda$null$0(HighestRankingOSGi.java:86)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.cleanUp(JustOSGiImpl.java:67)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$null$1(JustOSGiImpl.java:57)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$63(OSGi.java:613)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.ServiceReferenceOSGi$DefaultServiceTrackerCustomizer.removedService(ServiceReferenceOSGi.java:96)
>       at 
> org.apache.aries.component.dsl.internal.ServiceReferenceOSGi$DefaultServiceTrackerCustomizer.removedService(ServiceReferenceOSGi.java:56)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:969)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:1)
>       at 
> org.osgi.util.tracker.AbstractTracked.untrack(AbstractTracked.java:341)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:911)
>       at 
> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:120)
>       at 
> org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:957)
>       at 
> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
>       at 
> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151)
>       at 
> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:936)
>       at 
> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:873)
>       at 
> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:241)
>       at 
> org.apache.aries.component.dsl.internal.ServiceRegistrationOSGiImpl.lambda$getServiceRegistrationOSGiResult$3(ServiceRegistrationOSGiImpl.java:94)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OnlyLastPublisher.lambda$publish$0(OnlyLastPublisher.java:63)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.cleanUp(JustOSGiImpl.java:67)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$null$1(JustOSGiImpl.java:57)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at org.apache.aries.component.dsl.OSGi.lambda$null$63(OSGi.java:613)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.cleanUp(JustOSGiImpl.java:67)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$null$1(JustOSGiImpl.java:57)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.EffectsOSGi.lambda$null$0(EffectsOSGi.java:46)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.cleanUp(JustOSGiImpl.java:67)
>       at 
> org.apache.aries.component.dsl.internal.JustOSGiImpl.lambda$null$1(JustOSGiImpl.java:57)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.OSGiResultImpl.close(OSGiResultImpl.java:36)
>       at org.apache.aries.component.dsl.OSGiResult.run(OSGiResult.java:29)
>       at 
> org.apache.aries.component.dsl.internal.ServiceReferenceOSGi$DefaultServiceTrackerCustomizer.removedService(ServiceReferenceOSGi.java:96)
>       at 
> org.apache.aries.component.dsl.internal.ServiceReferenceOSGi$DefaultServiceTrackerCustomizer.removedService(ServiceReferenceOSGi.java:56)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:969)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerRemoved(ServiceTracker.java:1)
>       at 
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:286)
>       at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
>       at 
> org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:903)
>       at 
> org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:120)
>       at 
> org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:957)
>       at 
> org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:234)
>       at 
> org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:151)
>       at 
> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:936)
>       at 
> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:873)
>       at 
> org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:141)
>       at 
> org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:261)
>       at 
> org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:496)
>       at 
> org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:515)
>       at 
> org.eclipse.osgi.internal.framework.BundleContextImpl.registerService(BundleContextImpl.java:1043)
>       at test.ShiroTest.setupConfigs(ShiroTest.java:71)
>       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
>       at 
> sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
>       at 
> sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
>       at java.lang.reflect.Method.invoke(Method.java:498)
>       at 
> org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
>       at 
> org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
>       at 
> org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
>       at 
> org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:24)
>       at 
> org.junit.internal.runners.statements.RunAfters.evaluate(RunAfters.java:27)
>       at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
>       at 
> org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:57)
>       at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
>       at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
>       at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
>       at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
>       at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
>       at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
>       at junit.framework.JUnit4TestAdapter.run(JUnit4TestAdapter.java:38)
>       at junit.framework.TestSuite.runTest(TestSuite.java:252)
>       at junit.framework.TestSuite.run(TestSuite.java:247)
>       at aQute.junit.Activator.test(Activator.java:356)
>       at aQute.junit.Activator.automatic(Activator.java:266)
>       at aQute.junit.Activator.run(Activator.java:187)
>       at 
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>       at aQute.launcher.Launcher.launch(Launcher.java:450)
>       at aQute.launcher.Launcher.run(Launcher.java:179)
>       at aQute.launcher.Launcher.main(Launcher.java:155)
>       at 
> aQute.launcher.pre.EmbeddedLauncher.executeWithRunPath(EmbeddedLauncher.java:170)
>       at 
> aQute.launcher.pre.EmbeddedLauncher.findAndExecute(EmbeddedLauncher.java:135)
>       at aQute.launcher.pre.EmbeddedLauncher.main(EmbeddedLauncher.java:52)
> 13:32:35.818 [CM Event Dispatcher (Fire ConfigurationEvent: 
> pid=org.apache.aries.jax.rs.shiro.authentication)] ERROR 
> o.a.a.j.r.w.internal.Whiteboard - Errored ServiceReference 
> CachingServiceReference {
> cachedProperties={osgi.jaxrs.application.select=null (cached), service.id=75, 
> objectClass=[javax.ws.rs.core.Feature], osgi.jaxrs.name=aries.shiro.authc, 
> osgi.jaxrs.extension.select=null (cached), service.ranking=null (cached), 
> osgi.jaxrs.whiteboard.target=null (cached)}
> serviceReference={javax.ws.rs.core.Feature}={service.id=75, 
> osgi.jaxrs.extension=true, service.bundleid=3, service.scope=prototype, 
> shiro.authc=true, osgi.jaxrs.name=aries.shiro.authc, 
> service.pid=org.apache.aries.jax.rs.shiro.authentication}
> } for extension left
> {code}



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to