Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 380415

Summary: Examples demo does not start
Product: [RT] RAP Reporter: Ralf Sternberg <rsternberg>
Component: DemoAssignee: Project Inbox <rap-inbox>
Status: RESOLVED FIXED QA Contact:
Severity: normal    
Priority: P1 CC: ivan
Version: 1.5Flags: ivan: review+
Target Milestone: 1.5 RC2   
Hardware: PC   
OS: Linux   
Whiteboard:

Description Ralf Sternberg CLA 2012-05-23 10:25:43 EDT
java.lang.NullPointerException
 at org.eclipse.rap.examples.internal.Examples.initContributions(Examples.java:50)
 at org.eclipse.rap.examples.internal.ExampleApplication.configure(ExampleApplication.java:36)
 at org.eclipse.rwt.internal.application.ApplicationContextConfigurator.configureCustomSettings(ApplicationContextConfigurator.java:50)
 at org.eclipse.rwt.internal.application.ApplicationContextConfigurator.configure(ApplicationContextConfigurator.java:40)
 at org.eclipse.rwt.internal.application.ApplicationContext.doActivate(ApplicationContext.java:263)
 at org.eclipse.rwt.internal.application.ApplicationContext.activate(ApplicationContext.java:129)
 at org.eclipse.rwt.application.ApplicationRunner.activateApplicationContext(ApplicationRunner.java:118)
 at org.eclipse.rwt.application.ApplicationRunner.start(ApplicationRunner.java:83)
 at org.eclipse.rap.rwt.osgi.internal.ApplicationReferenceImpl.startRWTApplication(ApplicationReferenceImpl.java:77)
 at org.eclipse.rap.rwt.osgi.internal.ApplicationReferenceImpl.start(ApplicationReferenceImpl.java:63)
 at org.eclipse.rap.rwt.osgi.internal.ApplicationLauncherImpl.doLaunch(ApplicationLauncherImpl.java:103)
 at org.eclipse.rap.rwt.osgi.internal.ApplicationLauncherImpl.launch(ApplicationLauncherImpl.java:85)
 at org.eclipse.rap.rwt.osgi.internal.ApplicationLauncherImpl.launch(ApplicationLauncherImpl.java:162)
 at org.eclipse.rap.rwt.osgi.internal.ApplicationLauncherImpl.launchAtHttpService(ApplicationLauncherImpl.java:139)
 at org.eclipse.rap.rwt.osgi.internal.ApplicationLauncherImpl.addHttpService(ApplicationLauncherImpl.java:47)
 at org.eclipse.rap.rwt.osgi.internal.HttpTracker.addingService(HttpTracker.java:30)
 at org.eclipse.rap.rwt.osgi.internal.HttpTracker.addingService(HttpTracker.java:1)
 at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:932)
 at org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:1)
 at org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:256)
 at org.osgi.util.tracker.AbstractTracked.track(AbstractTracked.java:229)
 at org.osgi.util.tracker.ServiceTracker$Tracked.serviceChanged(ServiceTracker.java:894)
 at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)
 at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)
 at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
 at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)
 at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)
 at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)
 at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.register(ServiceRegistrationImpl.java:130)
 at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.registerService(ServiceRegistry.java:214)
 at org.eclipse.osgi.framework.internal.core.BundleContextImpl.registerService(BundleContextImpl.java:433)
 at org.eclipse.equinox.http.servlet.internal.Activator.registerHttpService(Activator.java:81)
 at org.eclipse.equinox.http.servlet.internal.Activator.addProxyServlet(Activator.java:60)
 at org.eclipse.equinox.http.servlet.internal.ProxyServlet.init(ProxyServlet.java:40)
 at org.eclipse.equinox.http.jetty.internal.HttpServerManager$InternalHttpServiceServlet.init(HttpServerManager.java:361)
 at org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:492)
 at org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:312)
 at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
 at org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.java:778)
 at org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletContextHandler.java:258)
 at org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandler.java:699)
 at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
 at org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrapper.java:90)
 at org.eclipse.jetty.server.Server.doStart(Server.java:262)
 at org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLifeCycle.java:59)
 at org.eclipse.equinox.http.jetty.internal.HttpServerManager.updated(HttpServerManager.java:113)
 at org.eclipse.equinox.http.jetty.internal.Activator.start(Activator.java:62)
 at org.eclipse.osgi.framework.internal.core.BundleContextImpl$1.run(BundleContextImpl.java:711)
 at java.security.AccessController.doPrivileged(Native Method)
 at org.eclipse.osgi.framework.internal.core.BundleContextImpl.startActivator(BundleContextImpl.java:702)
 at org.eclipse.osgi.framework.internal.core.BundleContextImpl.start(BundleContextImpl.java:683)
 at org.eclipse.osgi.framework.internal.core.BundleHost.startWorker(BundleHost.java:381)
 at org.eclipse.osgi.framework.internal.core.AbstractBundle.resume(AbstractBundle.java:390)
 at org.eclipse.osgi.framework.internal.core.Framework.resumeBundle(Framework.java:1177)
 at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:559)
 at org.eclipse.osgi.framework.internal.core.StartLevelManager.resumeBundles(StartLevelManager.java:544)
 at org.eclipse.osgi.framework.internal.core.StartLevelManager.incFWSL(StartLevelManager.java:457)
 at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:243)
 at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:438)
 at org.eclipse.osgi.framework.internal.core.StartLevelManager.dispatchEvent(StartLevelManager.java:1)
 at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
 at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)
Comment 1 Ralf Sternberg CLA 2012-05-23 13:30:50 EDT
The introduction of the additional method IExampleConfiguration#configure( Application ) in commit f24b9dbe0e5d926c1a489cb115e6bd507cfc69d3 was a failed attempt to allow contributions to register resources. This does not work because contributing bundles are not necessarily started when the application starts. We have to find another method of letting contributions register their resources.

Fixed by revoking this change with commit 67a55c73e6762b94cf03ca02d6731a1c52dd35dd.

I'd suggest to pick this commit also for 1.5.
Comment 2 Ivan Furnadjiev CLA 2012-05-24 03:25:21 EDT
(In reply to comment #1)
> I'd suggest to pick this commit also for 1.5.
+1 The removed code actually did nothing and I think that it is safe to commit it in 1.5.
Comment 3 Ralf Sternberg CLA 2012-05-24 04:55:00 EDT
Fixed in 1.5 with commit d8874189a23de8b6cae3326860665d7f57bcd797