I don't see how adding a file to the WAR would create this particular
exception. What version of Jetty are you using?

To build a Sling/Launchpad war, you can use the maven-launchpad-plugin.
I posted a (relatively) simple POM which creates a WAR will Sling plus
one extra bundle: http://gist.github.com/363643

This should go on the Sling site or wiki, but Confluence is down now AFAIK.

Justin

On 4/12/10 6:54 AM, Davide Maestroni wrote:
> Hi everybody,
> 
> I would like to create a Sling war containing an additional bundle which
> should be installed after Sling start up.
> Unfortunately the info I found at
> http://sling.apache.org/site/launch-sling.html look to be outdated, so I
> have no hint on how to do that. I tried to simply add a "20" folder under
> "WEB-INF\resources\bundles" and re-deploy the war, but I always get the
> following exception:
> 
> 2010-04-12 12:50:04.906:WARN:/sling:ERROR: Unable to start system bundle.
> (java.
> lang.NullPointerException)
> java.lang.NullPointerException
>         at org.eclipse.jetty.util.log.StdErrLog.format(StdErrLog.java:290)
>         at org.eclipse.jetty.util.log.StdErrLog.warn(StdErrLog.java:207)
>         at
> org.eclipse.jetty.server.handler.ContextHandler$Context.log(ContextHa
> ndler.java:1696)
>         at
> org.apache.sling.launchpad.base.webapp.SlingServletDelegate$ServletCo
> ntextLogger.doLog(SlingServletDelegate.java:437)
>         at org.apache.felix.framework.Logger._log(Logger.java:156)
>         at org.apache.felix.framework.Logger.log(Logger.java:89)
>         at
> org.apache.sling.launchpad.base.impl.BootstrapInstaller.installBundle
> (BootstrapInstaller.java:575)
>         at
> org.apache.sling.launchpad.base.impl.BootstrapInstaller.installBundle
> s(BootstrapInstaller.java:541)
>         at
> org.apache.sling.launchpad.base.impl.BootstrapInstaller.start(Bootstr
> apInstaller.java:279)
>         at
> org.apache.felix.framework.util.SecureAction.startActivator(SecureAct
> ion.java:661)
>         at
> org.apache.felix.framework.Felix$SystemBundleActivator.start(Felix.ja
> va:4066)
>         at
> org.apache.felix.framework.util.SecureAction.startActivator(SecureAct
> ion.java:661)
>         at org.apache.felix.framework.Felix.init(Felix.java:684)
>         at org.apache.sling.launchpad.base.impl.Sling.<init>(Sling.java:229)
>         at
> org.apache.sling.launchpad.base.webapp.SlingBridge.<init>(SlingBridge
> .java:41)
>         at
> org.apache.sling.launchpad.base.webapp.SlingServletDelegate.init(Slin
> gServletDelegate.java:201)
>         at javax.servlet.GenericServlet.init(GenericServlet.java:241)
>         at
> org.apache.sling.launchpad.webapp.SlingServlet.startSling(SlingServle
> t.java:334)
>         at
> org.apache.sling.launchpad.webapp.SlingServlet.startSling(SlingServle
> t.java:278)
>         at
> org.apache.sling.launchpad.webapp.SlingServlet.init(SlingServlet.java
> :93)
>         at javax.servlet.GenericServlet.init(GenericServlet.java:241)
>         at
> org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.jav
> a:421)
>         at
> org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:24
> 5)
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.ja
> va:699)
>         at
> org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletC
> ontextHandler.java:193)
>         at
> org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.jav
> a:978)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandle
> r.java:586)
>         at
> org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:349
> )
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCol
> lection.java:165)
>         at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(Con
> textHandlerCollection.java:162)
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCol
> lection.java:165)
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrappe
> r.java:92)
>         at org.eclipse.jetty.server.Server.doStart(Server.java:228)
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:99
> 0)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at
> org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:955
> )
> 2010-04-12 12:50:05.171:WARN:/sling:sling: Failed to start Sling in
> sling/_sling
> 
> java.lang.RuntimeException: Unable to start system bundle.
>         at org.apache.felix.framework.Felix.init(Felix.java:691)
>         at org.apache.sling.launchpad.base.impl.Sling.<init>(Sling.java:229)
>         at
> org.apache.sling.launchpad.base.webapp.SlingBridge.<init>(SlingBridge
> .java:41)
>         at
> org.apache.sling.launchpad.base.webapp.SlingServletDelegate.init(Slin
> gServletDelegate.java:201)
>         at javax.servlet.GenericServlet.init(GenericServlet.java:241)
>         at
> org.apache.sling.launchpad.webapp.SlingServlet.startSling(SlingServle
> t.java:334)
>         at
> org.apache.sling.launchpad.webapp.SlingServlet.startSling(SlingServle
> t.java:278)
>         at
> org.apache.sling.launchpad.webapp.SlingServlet.init(SlingServlet.java
> :93)
>         at javax.servlet.GenericServlet.init(GenericServlet.java:241)
>         at
> org.eclipse.jetty.servlet.ServletHolder.initServlet(ServletHolder.jav
> a:421)
>         at
> org.eclipse.jetty.servlet.ServletHolder.doStart(ServletHolder.java:24
> 5)
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.servlet.ServletHandler.initialize(ServletHandler.ja
> va:699)
>         at
> org.eclipse.jetty.servlet.ServletContextHandler.startContext(ServletC
> ontextHandler.java:193)
>         at
> org.eclipse.jetty.webapp.WebAppContext.startContext(WebAppContext.jav
> a:978)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doStart(ContextHandle
> r.java:586)
>         at
> org.eclipse.jetty.webapp.WebAppContext.doStart(WebAppContext.java:349
> )
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCol
> lection.java:165)
>         at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.doStart(Con
> textHandlerCollection.java:162)
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.doStart(HandlerCol
> lection.java:165)
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.doStart(HandlerWrappe
> r.java:92)
>         at org.eclipse.jetty.server.Server.doStart(Server.java:228)
>         at
> org.eclipse.jetty.util.component.AbstractLifeCycle.start(AbstractLife
> Cycle.java:55)
>         at
> org.eclipse.jetty.xml.XmlConfiguration$1.run(XmlConfiguration.java:99
> 0)
>         at java.security.AccessController.doPrivileged(Native Method)
>         at
> org.eclipse.jetty.xml.XmlConfiguration.main(XmlConfiguration.java:955
> 
> To be clear, what I would like to achieve is a war which, when deployed,
> start up Sling and the repository (as per normal installation) and then,
> when everything is correctly running, install also the additional bundle.
> Can anyone tell me how to to that or point me to a page describing the
> correct procedure?
> 
> Thank you very much,
> 
> Davide
> 

Reply via email to