One more detail, just checked the sources of Pax-CDI while version 1.0 was build against version 4.0.0 of Pax-Web 0.12 has been build and tested with version 4.2.x of Pax-Web. For Pax-Web 6.0.0 we most likely will need a new release of Pax-CDI cause it'll need to address the changes of Jetty etc.
regards, Achim 2016-08-17 22:21 GMT+02:00 Achim Nierbeck <[email protected]>: > Pax Web 4.2.x is pretty stable. > But it looks like as you're using a not supported Jetty version you seem > to run into special edge cases. > Those might be already be solved with Pax-web 6.0.0-SNAPSHOT > > The problem right now, is. Pax-CDI is using Pax-Web so we need to check > the Pax-CDI tests which version of Pax-Web those are using. AFAIK 0.12.x > works with vanilla Pax-Web 4.2.x (without Jetty 9.3), it might be that 1.0 > was based on Jetty higher then what's delivered in conjunction with Pax-Web > 4.2.x. This I need to verify. > As I only have a limited amount of private time to spent on those projects > I might not be able to get the complete picture on it > as you might expect. Till now my usage/development in the Pax-CDI part has > been limited. > > regards, Achim > > > 2016-08-17 19:57 GMT+02:00 iJava <[email protected]>: > >> The problem was solved that way: I took sources of pax-cdi 0.12 and added >> two methods >> @Override >> public <T> T decorate(T target) { >> getInjector().inject(target); >> return target; >> } >> >> @Override >> public void destroy(Object target) { >> getInjector().destroy(target); >> } >> >> to pax-cdi-web-weld in JettyDecorator. Their implementation I took from >> pax-cdi 1.0. The bug is described here : >> https://ops4j1.jira.com/browse/PAXCDI-209 >> >> However, in spite of all my attempts (I have all the same versions as >> karaf) I still can't normally stop war bundle. >> >> Please, help me. Is pax-web 4.2.6 ready for production? Maybe it is still >> in development and I ask stupid questions... >> >> Now I get (this is it is clear the problem is in pax-web) : >> >> org.ops4j.pax.web.pax-web-extender-war[org.ops4j.pax.web. >> extender.war.internal.WebObserver$1] : Error stopping extension for >> bundle com.example.site.fend [63] >> java.lang.NullPointerException >> at org.ops4j.pax.web.extender.war.internal.DefaultWebAppDepende >> ncyManager.removeWebApp(DefaultWebAppDependencyManager.java:99) >> at org.ops4j.pax.web.extender.war.internal.WebObserver$1.doDest >> roy(WebObserver.java:189) >> at org.ops4j.pax.web.extender.war.internal.extender.SimpleExten >> sion.destroy(SimpleExtension.java:71) >> at org.ops4j.pax.web.extender.war.internal.extender.AbstractExt >> ender$2.run(AbstractExtender.java:306) >> at java.util.concurrent.Executors$RunnableAdapter.call( >> Executors.java:511) >> at java.util.concurrent.FutureTask.run(FutureTask.java:266) >> at org.ops4j.pax.web.extender.war.internal.extender.AbstractExt >> ender.destroyExtension(AbstractExtender.java:332) >> at org.ops4j.pax.web.extender.war.internal.extender.AbstractExt >> ender.bundleChanged(AbstractExtender.java:190) >> at org.apache.felix.framework.util.EventDispatcher.invokeBundle >> ListenerCallback(EventDispatcher.java:916) >> at org.apache.felix.framework.util.EventDispatcher.fireEventImm >> ediately(EventDispatcher.java:835) >> at org.apache.felix.framework.util.EventDispatcher.fireBundleEv >> ent(EventDispatcher.java:517) >> at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541) >> at org.apache.felix.framework.Felix.stopBundle(Felix.java:2600) >> at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:1038) >> at org.apache.felix.framework.BundleImpl.stop(BundleImpl.java:1024) >> at com.example.solution.mgr.core.services.OsgiServiceImpl.stopB >> undle(OsgiServiceImpl.java:106) >> at com.example.solution.mgr.svr.services.RmiOsgiServiceImpl.sto >> pBundle(RmiOsgiServiceImpl.java:80) >> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAcce >> ssorImpl.java:62) >> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe >> thodAccessorImpl.java:43) >> at java.lang.reflect.Method.invoke(Method.java:497) >> at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef. >> java:323) >> at sun.rmi.transport.Transport$1.run(Transport.java:200) >> at sun.rmi.transport.Transport$1.run(Transport.java:197) >> at java.security.AccessController.doPrivileged(Native Method) >> at sun.rmi.transport.Transport.serviceCall(Transport.java:196) >> at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTranspo >> rt.java:568) >> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TC >> PTransport.java:826) >> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$ >> run$250(TCPTransport.java:683) >> at >> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$1/620361102.run(Unknown >> Source) >> at java.security.AccessController.doPrivileged(Native Method) >> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCP >> Transport.java:682) >> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool >> Executor.java:1142) >> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo >> lExecutor.java:617) >> at java.lang.Thread.run(Thread.java:745) >> >> >> On Wednesday, 17 August 2016 18:30:35 UTC+3, iJava wrote: >>> >>> Hi, Achim. >>> >>> I changed all my versions and they become exactly as in karaf: pax-cdi >>> 0.12, pax-web 4.2.6, jetty 9.2.15, weld 1.2.0 etc. >>> >>> However, now I can't start my application (last time I couldn't stop >>> :)). The problem seems appeared as only I changed pax-cdi from 1.0 to 0.12. >>> >>> How to solve it? >>> >>> FAILED >>> HttpServiceContext{httpContext=WebAppHttpContext{com.example.site.fend >>> - 63}}: java.lang.AbstractMethodError: org.ops4j.pax.cdi.web.weld.imp >>> l.JettyDecorator.decorate(Ljava/lang/Object;)Ljava/lang/Object; >>> java.lang.AbstractMethodError: org.ops4j.pax.cdi.web.weld.imp >>> l.JettyDecorator.decorate(Ljava/lang/Object;)Ljava/lang/Object; >>> at org.eclipse.jetty.servlet.ServletContextHandler$Context.crea >>> teServlet(ServletContextHandler.java:1170) >>> at org.eclipse.jetty.servlet.ServletHolder.newInstance(ServletH >>> older.java:1207) >>> at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletH >>> older.java:588) >>> at org.eclipse.jetty.servlet.ServletHolder.initialize(ServletHo >>> lder.java:396) >>> at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletH >>> andler.java:871) >>> at org.eclipse.jetty.servlet.ServletContextHandler.startContext >>> (ServletContextHandler.java:298) >>> at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext. >>> startContext(HttpServiceContext.java:590) >>> at org.eclipse.jetty.server.handler.ContextHandler.doStart(Cont >>> extHandler.java:741) >>> at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext. >>> doStart(HttpServiceContext.java:249) >>> at org.eclipse.jetty.util.component.AbstractLifeCycle.start(Abs >>> tractLifeCycle.java:68) >>> at org.ops4j.pax.web.service.jetty.internal.JettyServerImpl$1.s >>> tart(JettyServerImpl.java:273) >>> at org.ops4j.pax.web.service.internal.HttpServiceStarted.end(Ht >>> tpServiceStarted.java:1095) >>> at org.ops4j.pax.web.service.internal.HttpServiceProxy.end(Http >>> ServiceProxy.java:413) >>> at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisito >>> rWC.end(RegisterWebAppVisitorWC.java:380) >>> at org.ops4j.pax.web.extender.war.internal.model.WebApp.accept( >>> WebApp.java:692) >>> at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebA >>> ppDependencyListener.register(WebAppPublisher.java:237) >>> at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebA >>> ppDependencyListener.addingService(WebAppPublisher.java:182) >>> at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebA >>> ppDependencyListener.addingService(WebAppPublisher.java:135) >>> at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAddin >>> g(ServiceTracker.java:941) >>> at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAddin >>> g(ServiceTracker.java:870) >>> at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTr >>> acked.java:256) >>> at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked. >>> java:229) >>> at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged( >>> ServiceTracker.java:901) >>> at org.apache.felix.framework.util.EventDispatcher.invokeServic >>> eListenerCallback(EventDispatcher.java:991) >>> at org.apache.felix.framework.util.EventDispatcher.fireEventImm >>> ediately(EventDispatcher.java:839) >>> at org.apache.felix.framework.util.EventDispatcher.fireServiceE >>> vent(EventDispatcher.java:546) >>> at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java >>> :4557) >>> at org.apache.felix.framework.Felix.registerService(Felix.java:3549) >>> at org.apache.felix.framework.BundleContextImpl.registerService >>> (BundleContextImpl.java:348) >>> at org.apache.felix.framework.BundleContextImpl.registerService >>> (BundleContextImpl.java:355) >>> at org.ops4j.pax.cdi.web.CdiWebAppDependencyManager.register(Cd >>> iWebAppDependencyManager.java:62) >>> at org.ops4j.pax.cdi.web.CdiWebAppDependencyManager.postCreate( >>> CdiWebAppDependencyManager.java:88) >>> at org.ops4j.pax.cdi.weld.impl.WeldCdiContainerFactory.createCo >>> ntainer(WeldCdiContainerFactory.java:71) >>> at org.ops4j.pax.cdi.extender.impl.CdiExtender.doCreateContaine >>> r(CdiExtender.java:144) >>> at org.ops4j.pax.cdi.extender.impl.CdiExtender.createContainer( >>> CdiExtender.java:124) >>> at org.ops4j.pax.cdi.extender.impl.CdiExtender.addingBundle(Cdi >>> Extender.java:86) >>> at org.ops4j.pax.cdi.extender.impl.CdiExtender.addingBundle(Cdi >>> Extender.java:44) >>> at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding >>> (BundleTracker.java:469) >>> at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding >>> (BundleTracker.java:415) >>> at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTr >>> acked.java:256) >>> at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked. >>> java:229) >>> at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(Bu >>> ndleTracker.java:444) >>> at org.apache.felix.framework.util.EventDispatcher.invokeBundle >>> ListenerCallback(EventDispatcher.java:916) >>> at org.apache.felix.framework.util.EventDispatcher.fireEventImm >>> ediately(EventDispatcher.java:835) >>> at org.apache.felix.framework.util.EventDispatcher.fireBundleEv >>> ent(EventDispatcher.java:517) >>> at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541) >>> at org.apache.felix.framework.Felix.startBundle(Felix.java:2172) >>> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998) >>> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984) >>> at com.example.solution.mgr.core.services.OsgiServiceImpl.start >>> Bundle(OsgiServiceImpl.java:88) >>> at com.example.solution.mgr.svr.services.RmiOsgiServiceImpl.sta >>> rtBundle(RmiOsgiServiceImpl.java:69) >>> at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source) >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe >>> thodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:497) >>> at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.ja >>> va:323) >>> at sun.rmi.transport.Transport$1.run(Transport.java:200) >>> at sun.rmi.transport.Transport$1.run(Transport.java:197) >>> at java.security.AccessController.doPrivileged(Native Method) >>> at sun.rmi.transport.Transport.serviceCall(Transport.java:196) >>> at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTranspo >>> rt.java:568) >>> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TC >>> PTransport.java:826) >>> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$ >>> run$250(TCPTransport.java:683) >>> at >>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$1/563492457.run(Unknown >>> Source) >>> at java.security.AccessController.doPrivileged(Native Method) >>> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCP >>> Transport.java:682) >>> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool >>> Executor.java:1142) >>> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo >>> lExecutor.java:617) >>> at java.lang.Thread.run(Thread.java:745) >>> ERROR: Bundle com.example.site.fend [63] EventDispatcher: Error during >>> dispatch. (java.lang.AbstractMethodError: org.ops4j.pax.cdi.web.weld.imp >>> l.JettyDecorator.decorate(Ljava/lang/Object;)Ljava/lang/Object;) >>> java.lang.AbstractMethodError: org.ops4j.pax.cdi.web.weld.imp >>> l.JettyDecorator.decorate(Ljava/lang/Object;)Ljava/lang/Object; >>> at org.eclipse.jetty.servlet.ServletContextHandler$Context.crea >>> teServlet(ServletContextHandler.java:1170) >>> at org.eclipse.jetty.servlet.ServletHolder.newInstance(ServletH >>> older.java:1207) >>> at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletH >>> older.java:588) >>> at org.eclipse.jetty.servlet.ServletHolder.initialize(ServletHo >>> lder.java:396) >>> at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletH >>> andler.java:871) >>> at org.eclipse.jetty.servlet.ServletContextHandler.startContext >>> (ServletContextHandler.java:298) >>> at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext. >>> startContext(HttpServiceContext.java:590) >>> at org.eclipse.jetty.server.handler.ContextHandler.doStart(Cont >>> extHandler.java:741) >>> at org.ops4j.pax.web.service.jetty.internal.HttpServiceContext. >>> doStart(HttpServiceContext.java:249) >>> at org.eclipse.jetty.util.component.AbstractLifeCycle.start(Abs >>> tractLifeCycle.java:68) >>> at org.ops4j.pax.web.service.jetty.internal.JettyServerImpl$1.s >>> tart(JettyServerImpl.java:273) >>> at org.ops4j.pax.web.service.internal.HttpServiceStarted.end(Ht >>> tpServiceStarted.java:1095) >>> at org.ops4j.pax.web.service.internal.HttpServiceProxy.end(Http >>> ServiceProxy.java:413) >>> at org.ops4j.pax.web.extender.war.internal.RegisterWebAppVisito >>> rWC.end(RegisterWebAppVisitorWC.java:380) >>> at org.ops4j.pax.web.extender.war.internal.model.WebApp.accept( >>> WebApp.java:692) >>> at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebA >>> ppDependencyListener.register(WebAppPublisher.java:237) >>> at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebA >>> ppDependencyListener.addingService(WebAppPublisher.java:182) >>> at org.ops4j.pax.web.extender.war.internal.WebAppPublisher$WebA >>> ppDependencyListener.addingService(WebAppPublisher.java:135) >>> at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAddin >>> g(ServiceTracker.java:941) >>> at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAddin >>> g(ServiceTracker.java:870) >>> at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTr >>> acked.java:256) >>> at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked. >>> java:229) >>> at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged( >>> ServiceTracker.java:901) >>> at org.apache.felix.framework.util.EventDispatcher.invokeServic >>> eListenerCallback(EventDispatcher.java:991) >>> at org.apache.felix.framework.util.EventDispatcher.fireEventImm >>> ediately(EventDispatcher.java:839) >>> at org.apache.felix.framework.util.EventDispatcher.fireServiceE >>> vent(EventDispatcher.java:546) >>> at org.apache.felix.framework.Felix.fireServiceEvent(Felix.java >>> :4557) >>> at org.apache.felix.framework.Felix.registerService(Felix.java:3549) >>> at org.apache.felix.framework.BundleContextImpl.registerService >>> (BundleContextImpl.java:348) >>> at org.apache.felix.framework.BundleContextImpl.registerService >>> (BundleContextImpl.java:355) >>> at org.ops4j.pax.cdi.web.CdiWebAppDependencyManager.register(Cd >>> iWebAppDependencyManager.java:62) >>> at org.ops4j.pax.cdi.web.CdiWebAppDependencyManager.postCreate( >>> CdiWebAppDependencyManager.java:88) >>> at org.ops4j.pax.cdi.weld.impl.WeldCdiContainerFactory.createCo >>> ntainer(WeldCdiContainerFactory.java:71) >>> at org.ops4j.pax.cdi.extender.impl.CdiExtender.doCreateContaine >>> r(CdiExtender.java:144) >>> at org.ops4j.pax.cdi.extender.impl.CdiExtender.createContainer( >>> CdiExtender.java:124) >>> at org.ops4j.pax.cdi.extender.impl.CdiExtender.addingBundle(Cdi >>> Extender.java:86) >>> at org.ops4j.pax.cdi.extender.impl.CdiExtender.addingBundle(Cdi >>> Extender.java:44) >>> at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding >>> (BundleTracker.java:469) >>> at org.osgi.util.tracker.BundleTracker$Tracked.customizerAdding >>> (BundleTracker.java:415) >>> at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTr >>> acked.java:256) >>> at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked. >>> java:229) >>> at org.osgi.util.tracker.BundleTracker$Tracked.bundleChanged(Bu >>> ndleTracker.java:444) >>> at org.apache.felix.framework.util.EventDispatcher.invokeBundle >>> ListenerCallback(EventDispatcher.java:916) >>> at org.apache.felix.framework.util.EventDispatcher.fireEventImm >>> ediately(EventDispatcher.java:835) >>> at org.apache.felix.framework.util.EventDispatcher.fireBundleEv >>> ent(EventDispatcher.java:517) >>> at org.apache.felix.framework.Felix.fireBundleEvent(Felix.java:4541) >>> at org.apache.felix.framework.Felix.startBundle(Felix.java:2172) >>> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:998) >>> at org.apache.felix.framework.BundleImpl.start(BundleImpl.java:984) >>> at com.example.solution.mgr.core.services.OsgiServiceImpl.start >>> Bundle(OsgiServiceImpl.java:88) >>> at com.example.solution.mgr.svr.services.RmiOsgiServiceImpl.sta >>> rtBundle(RmiOsgiServiceImpl.java:69) >>> at sun.reflect.GeneratedMethodAccessor16.invoke(Unknown Source) >>> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMe >>> thodAccessorImpl.java:43) >>> at java.lang.reflect.Method.invoke(Method.java:497) >>> at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.ja >>> va:323) >>> at sun.rmi.transport.Transport$1.run(Transport.java:200) >>> at sun.rmi.transport.Transport$1.run(Transport.java:197) >>> at java.security.AccessController.doPrivileged(Native Method) >>> at sun.rmi.transport.Transport.serviceCall(Transport.java:196) >>> at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTranspo >>> rt.java:568) >>> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run0(TC >>> PTransport.java:826) >>> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.lambda$ >>> run$250(TCPTransport.java:683) >>> at >>> sun.rmi.transport.tcp.TCPTransport$ConnectionHandler$$Lambda$1/563492457.run(Unknown >>> Source) >>> at java.security.AccessController.doPrivileged(Native Method) >>> at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCP >>> Transport.java:682) >>> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPool >>> Executor.java:1142) >>> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoo >>> lExecutor.java:617) >>> at java.lang.Thread.run(Thread.java:745) >>> >>> >>> >>> >>> >>> On Wednesday, 17 August 2016 16:01:33 UTC+3, iJava wrote: >>>> >>>> Hi Achim, >>>> >>>> Thank you for your answer. Then I will try to use pax-cdi 0.12 and we >>>> will see the results. Can you say when you are going to migrate to pax-cdi >>>> 1.0? >>>> >>>> On Wednesday, 17 August 2016 15:53:47 UTC+3, Achim Nierbeck wrote: >>>>> >>>>> Hi Pavel, >>>>> >>>>> actually I'm not sure where the issue might be at. >>>>> I know that Apache Karaf uses 0.12.x for a reason, as 1.0.0 was kind >>>>> of not working correctly. >>>>> But we never really had the time to investigate further :/ >>>>> >>>>> sorry, can't be much of help right now. Especially my $DayJob keeps me >>>>> from doing OSS right now ... >>>>> >>>>> >>>>> regards, Achim >>>>> >>>>> 2016-08-17 10:58 GMT+02:00 iJava <[email protected]>: >>>>> >>>>>> Achim, are you there? Can I help somehow because it is impossible to >>>>>> work when you can't restart war bundle. >>>>>> >>>>>> >>>>>> On Tuesday, 16 August 2016 11:25:43 UTC+3, iJava wrote: >>>>>>> >>>>>>> Hi Achim, >>>>>>> >>>>>>> You know to change from 1 to 0.12 is not so simple - dependencies >>>>>>> etc. Could you say - is my code right? Is it enough bundle.stop without >>>>>>> WarManager.stop? >>>>>>> Or it is enought WarManager.stop without bundle.stop. >>>>>>> >>>>>>> Is this bug in pax products - I do execute the most simple operation >>>>>>> - stop bundle. >>>>>>> >>>>>>> On Tuesday, 16 August 2016 11:02:35 UTC+3, Achim Nierbeck wrote: >>>>>>>> >>>>>>>> Hi, >>>>>>>> >>>>>>>> could you try with Pax-CDI 0.12.0 ... afaik it's what we use with >>>>>>>> Apache Karaf, and it seems to work better ... >>>>>>>> >>>>>>>> regards, Achim >>>>>>>> >>>>>>>> >>>>>>>> 2016-08-16 8:05 GMT+02:00 iJava <[email protected]>: >>>>>>>> >>>>>>>>> Hi all, >>>>>>>>> >>>>>>>>> Unfortunately I can't stop wab without exceptions (I use pax-web >>>>>>>>> 4.2.7 and pax-cdi 1.0) . Now I do this way: >>>>>>>>> >>>>>>>>> ServiceReference reference = bundleContext.getServiceRefere >>>>>>>>> nce(WarManager.class.getName()); >>>>>>>>> WarManager warManager = (WarManager) bundleContext.getService(refer >>>>>>>>> ence); >>>>>>>>> warManager.stop(bundle.getBundleId()); >>>>>>>>> bundle.stop();//I tried without this line but bundle doesn't stop >>>>>>>>> (state 32) >>>>>>>>> >>>>>>>>> I tried it without WarManager but the same result. >>>>>>>>> >>>>>>>>> And this is what I get - I can't understand if it is pax-web or >>>>>>>>> pax-cdi >>>>>>>>> >>>>>>>>> java.lang.NullPointerException >>>>>>>>> at org.ops4j.pax.web.extender.war >>>>>>>>> .internal.DefaultWebAppDependencyManager.removeWebApp(Defaul >>>>>>>>> tWebAppDependencyManager.java:99) >>>>>>>>> at org.ops4j.pax.web.extender.war >>>>>>>>> .internal.WebObserver$1.doDestroy(WebObserver.java:189) >>>>>>>>> at org.ops4j.pax.web.extender.war >>>>>>>>> .internal.extender.SimpleExtension.destroy(SimpleExtension.j >>>>>>>>> ava:71) >>>>>>>>> at org.ops4j.pax.web.extender.war >>>>>>>>> .internal.extender.AbstractExtender$2.run(AbstractExtender.j >>>>>>>>> ava:306) >>>>>>>>> at java.util.concurrent.Executors >>>>>>>>> $RunnableAdapter.call(Executors.java:511) >>>>>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:266) >>>>>>>>> at org.ops4j.pax.web.extender.war >>>>>>>>> .internal.extender.AbstractExtender.destroyExtension(Abstrac >>>>>>>>> tExtender.java:332) >>>>>>>>> at org.ops4j.pax.web.extender.war >>>>>>>>> .internal.extender.AbstractExtender.bundleChanged(AbstractEx >>>>>>>>> tender.java:190) >>>>>>>>> at org.apache.felix.framework.uti >>>>>>>>> l.EventDispatcher.invokeBundleListenerCallback(EventDispatch >>>>>>>>> er.java:916) >>>>>>>>> at org.apache.felix.framework.uti >>>>>>>>> l.EventDispatcher.fireEventImmediately(EventDispatcher.java:835) >>>>>>>>> at org.apache.felix.framework.uti >>>>>>>>> l.EventDispatcher.fireBundleEvent(EventDispatcher.java:517) >>>>>>>>> at org.apache.felix.framework.Fel >>>>>>>>> ix.fireBundleEvent(Felix.java:4541) >>>>>>>>> at org.apache.felix.framework.Fel >>>>>>>>> ix.stopBundle(Felix.java:2600) >>>>>>>>> at org.apache.felix.framework.Bun >>>>>>>>> dleImpl.stop(BundleImpl.java:1038) >>>>>>>>> at org.apache.felix.framework.Bun >>>>>>>>> dleImpl.stop(BundleImpl.java:1024) >>>>>>>>> at org.example.solution.mgr.core. >>>>>>>>> services.OsgiServiceImpl.stopBundle(OsgiServiceImpl.java:97) >>>>>>>>> at org.example.solution.mgr.svr.s >>>>>>>>> ervices.RmiOsgiServiceImpl.stopBundle(RmiOsgiServiceImpl.java:80) >>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>>>>>> at sun.reflect.NativeMethodAccess >>>>>>>>> orImpl.invoke(NativeMethodAccessorImpl.java:62) >>>>>>>>> at sun.reflect.DelegatingMethodAc >>>>>>>>> cessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:497) >>>>>>>>> at sun.rmi.server.UnicastServerRe >>>>>>>>> f.dispatch(UnicastServerRef.java:323) >>>>>>>>> at sun.rmi.transport.Transport$1.run(Transport.java:200) >>>>>>>>> at sun.rmi.transport.Transport$1.run(Transport.java:197) >>>>>>>>> at java.security.AccessController.doPrivileged(Native Method) >>>>>>>>> at sun.rmi.transport.Transport.serviceCall(Transport.java:196) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port.handleMessages(TCPTransport.java:568) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port$ConnectionHandler.run0(TCPTransport.java:826) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port$ConnectionHandler.lambda$run$250(TCPTransport.java:683) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port$ConnectionHandler$$Lambda$1/783938596.run(Unknown Source) >>>>>>>>> at java.security.AccessController.doPrivileged(Native Method) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port$ConnectionHandler.run(TCPTransport.java:682) >>>>>>>>> at java.util.concurrent.ThreadPoo >>>>>>>>> lExecutor.runWorker(ThreadPoolExecutor.java:1142) >>>>>>>>> at java.util.concurrent.ThreadPoo >>>>>>>>> lExecutor$Worker.run(ThreadPoolExecutor.java:617) >>>>>>>>> at java.lang.Thread.run(Thread.java:745) >>>>>>>>> ERROR: Bundle org.example.site.fend [67] EventDispatcher: Error >>>>>>>>> during dispatch. (java.lang.IllegalStateException: Invalid >>>>>>>>> BundleContext.) >>>>>>>>> java.lang.IllegalStateException: Invalid BundleContext. >>>>>>>>> at org.apache.felix.framework.Bun >>>>>>>>> dleContextImpl.checkValidity(BundleContextImpl.java:511) >>>>>>>>> at org.apache.felix.framework.Bun >>>>>>>>> dleContextImpl.getServiceObjects(BundleContextImpl.java:529) >>>>>>>>> at org.ops4j.pax.cdi.extension.im >>>>>>>>> pl.compat.Osgi6ServiceObjectsWrapper.init(Osgi6ServiceObject >>>>>>>>> sWrapper.java:55) >>>>>>>>> at org.ops4j.pax.cdi.extension.im >>>>>>>>> pl.compat.OsgiScopeUtils.createServiceObjectsWrapper(OsgiSco >>>>>>>>> peUtils.java:59) >>>>>>>>> at org.ops4j.pax.cdi.extension.im >>>>>>>>> pl.ServiceEventBridge.serviceChanged(ServiceEventBridge.java:62) >>>>>>>>> at org.apache.felix.framework.uti >>>>>>>>> l.EventDispatcher.invokeServiceListenerCallback(EventDispatc >>>>>>>>> her.java:991) >>>>>>>>> at org.apache.felix.framework.uti >>>>>>>>> l.EventDispatcher.fireEventImmediately(EventDispatcher.java:839) >>>>>>>>> at org.apache.felix.framework.uti >>>>>>>>> l.EventDispatcher.fireServiceEvent(EventDispatcher.java:546) >>>>>>>>> at org.apache.felix.framework.Fel >>>>>>>>> ix.fireServiceEvent(Felix.java:4557) >>>>>>>>> at org.apache.felix.framework.Felix.access$000(Felix.java:106) >>>>>>>>> at org.apache.felix.framework.Fel >>>>>>>>> ix$1.serviceChanged(Felix.java:420) >>>>>>>>> at org.apache.felix.framework.Ser >>>>>>>>> viceRegistry.unregisterService(ServiceRegistry.java:170) >>>>>>>>> at org.apache.felix.framework.Ser >>>>>>>>> viceRegistrationImpl.unregister(ServiceRegistrationImpl.java:144) >>>>>>>>> at org.apache.felix.framework.Ser >>>>>>>>> viceRegistry.unregisterServices(ServiceRegistry.java:235) >>>>>>>>> at org.apache.felix.framework.Fel >>>>>>>>> ix.stopBundle(Felix.java:2635) >>>>>>>>> at org.apache.felix.framework.Bun >>>>>>>>> dleImpl.stop(BundleImpl.java:1038) >>>>>>>>> at org.apache.felix.framework.Bun >>>>>>>>> dleImpl.stop(BundleImpl.java:1024) >>>>>>>>> at org.example.solution.mgr.core. >>>>>>>>> services.OsgiServiceImpl.stopBundle(OsgiServiceImpl.java:97) >>>>>>>>> at org.example.solution.mgr.svr.s >>>>>>>>> ervices.RmiOsgiServiceImpl.stopBundle(RmiOsgiServiceImpl.java:80) >>>>>>>>> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) >>>>>>>>> at sun.reflect.NativeMethodAccess >>>>>>>>> orImpl.invoke(NativeMethodAccessorImpl.java:62) >>>>>>>>> at sun.reflect.DelegatingMethodAc >>>>>>>>> cessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) >>>>>>>>> at java.lang.reflect.Method.invoke(Method.java:497) >>>>>>>>> at sun.rmi.server.UnicastServerRe >>>>>>>>> f.dispatch(UnicastServerRef.java:323) >>>>>>>>> at sun.rmi.transport.Transport$1.run(Transport.java:200) >>>>>>>>> at sun.rmi.transport.Transport$1.run(Transport.java:197) >>>>>>>>> at java.security.AccessController.doPrivileged(Native Method) >>>>>>>>> at sun.rmi.transport.Transport.serviceCall(Transport.java:196) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port.handleMessages(TCPTransport.java:568) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port$ConnectionHandler.run0(TCPTransport.java:826) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port$ConnectionHandler.lambda$run$250(TCPTransport.java:683) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port$ConnectionHandler$$Lambda$1/783938596.run(Unknown Source) >>>>>>>>> at java.security.AccessController.doPrivileged(Native Method) >>>>>>>>> at sun.rmi.transport.tcp.TCPTrans >>>>>>>>> port$ConnectionHandler.run(TCPTransport.java:682) >>>>>>>>> at java.util.concurrent.ThreadPoo >>>>>>>>> lExecutor.runWorker(ThreadPoolExecutor.java:1142) >>>>>>>>> at java.util.concurrent.ThreadPoo >>>>>>>>> lExecutor$Worker.run(ThreadPoolExecutor.java:617) >>>>>>>>> at java.lang.Thread.run(Thread.java:745) >>>>>>>>> [RMI TCP Connection(3)-127.0.0.1] INFO >>>>>>>>> org.ops4j.pax.web.service.internal.HttpServiceFactoryImpl - >>>>>>>>> Unbinding bundle: [org.example.site.fend [67]] >>>>>>>>> >>>>>>>>> >>>>>>>>> -- >>>>>>>>> -- >>>>>>>>> ------------------ >>>>>>>>> OPS4J - http://www.ops4j.org - [email protected] >>>>>>>>> >>>>>>>>> --- >>>>>>>>> You received this message because you are subscribed to the Google >>>>>>>>> Groups "OPS4J" group. >>>>>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>>>>> send an email to [email protected]. >>>>>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> -- >>>>>>>> >>>>>>>> Apache Member >>>>>>>> Apache Karaf <http://karaf.apache.org/> Committer & PMC >>>>>>>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> >>>>>>>> Committer & Project Lead >>>>>>>> blog <http://notizblog.nierbeck.de/> >>>>>>>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> >>>>>>>> >>>>>>>> Software Architect / Project Manager / Scrum Master >>>>>>>> >>>>>>>> -- >>>>>> -- >>>>>> ------------------ >>>>>> OPS4J - http://www.ops4j.org - [email protected] >>>>>> >>>>>> --- >>>>>> You received this message because you are subscribed to the Google >>>>>> Groups "OPS4J" group. >>>>>> To unsubscribe from this group and stop receiving emails from it, >>>>>> send an email to [email protected]. >>>>>> For more options, visit https://groups.google.com/d/optout. >>>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> >>>>> Apache Member >>>>> Apache Karaf <http://karaf.apache.org/> Committer & PMC >>>>> OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> >>>>> Committer & Project Lead >>>>> blog <http://notizblog.nierbeck.de/> >>>>> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> >>>>> >>>>> Software Architect / Project Manager / Scrum Master >>>>> >>>>> -- >> -- >> ------------------ >> OPS4J - http://www.ops4j.org - [email protected] >> >> --- >> You received this message because you are subscribed to the Google Groups >> "OPS4J" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > > Apache Member > Apache Karaf <http://karaf.apache.org/> Committer & PMC > OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & > Project Lead > blog <http://notizblog.nierbeck.de/> > Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> > > Software Architect / Project Manager / Scrum Master > > -- Apache Member Apache Karaf <http://karaf.apache.org/> Committer & PMC OPS4J Pax Web <http://wiki.ops4j.org/display/paxweb/Pax+Web/> Committer & Project Lead blog <http://notizblog.nierbeck.de/> Co-Author of Apache Karaf Cookbook <http://bit.ly/1ps9rkS> Software Architect / Project Manager / Scrum Master -- -- ------------------ OPS4J - http://www.ops4j.org - [email protected] --- You received this message because you are subscribed to the Google Groups "OPS4J" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
