Server server = new Server(8080);
Context ctx = new Context( server, "/", Context.SESSIONS );
ServletHolder servletHolder = new ServletHolder(new WicketServlet());
servletHolder.setInitParameter("applicationClassName", WicketApplication.class.getName() );
ctx.addServlet( servletHolder, "/bot/*" );
/* Static content is not being served. You need to add a servlet
that will serve the html, images etc for you: */
ServletHolder defaultSH = new ServletHolder(new org.mortbay.jetty.servlet.DefaultServlet());
// This didn't work - see the NPE bellow.
//defaultSH.setInitParameter("relativeResourceBase", "./src/main/java/org/jawabot/web/files");
defaultSH.setInitParameter("resourceBase", "./src/main/java/org/jawabot/web/files");
ctx.addServlet(defaultSH, "/");
Strange thing is that resourceBase works when provided with a
relative path, and setting relativeResourceBase didn't work, I was
getting this NPE:
04:49:39.401 DEBUG [main] org.mortbay.log started org.apache.wicket.protocol.http.WicketServlet-16695559
04:49:39.404 DEBUG [main] org.mortbay.log Checking Resource aliases
04:49:39.405 ERROR [main] org.mortbay.log EXCEPTION
java.lang.NullPointerException
at org.mortbay.jetty.servlet.DefaultServlet.init(DefaultServlet.java:181)
at javax.servlet.GenericServlet.init(GenericServlet.java:241)
at org.mortbay.jetty.servlet.ServletHolder.initServlet(ServletHolder.java:440)
at org.mortbay.jetty.servlet.ServletHolder.doStart(ServletHolder.java:263)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.servlet.ServletHandler.initialize(ServletHandler.java:685)
at org.mortbay.jetty.servlet.Context.startContext(Context.java:140)
at org.mortbay.jetty.handler.ContextHandler.doStart(ContextHandler.java:517)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.mortbay.jetty.handler.HandlerWrapper.doStart(HandlerWrapper.java:130)
at org.mortbay.jetty.Server.doStart(Server.java:224)
at org.mortbay.component.AbstractLifeCycle.start(AbstractLifeCycle.java:50)
at org.jawabot.web.RunInJetty.main(RunInJetty.java:54)
04:49:39.406 INFO [main] / Unavailable javax.servlet.UnavailableException: java.lang.NullPointerException
04:49:39.406 DEBUG [main] org.mortbay.log started org.mortbay.jetty.servlet.DefaultServlet-29132923
04:49:39.406 DEBUG [main] org.mortbay.log started org.mortbay.jetty.servlet.Context@19209ea{/,null}
04:49:39.407 DEBUG [main] org.mortbay.log starting Server@16a786
04:49:39.410 INFO [main] org.mortbay.log Started SocketConnector@0.0.0.0:8080
04:49:39.410 DEBUG [main] org.mortbay.log started SocketConnector@0.0.0.0:8080
04:49:39.410 DEBUG [main] org.mortbay.log started Server@16a786