Ok. Use a servlet instead then in the mapping and have it redirect to the correct page
Sendt fra min iPhone > Den 22. des. 2014 kl. 10.22 skrev Dmitry Polovka <messa...@messaged.lv>: > > Adding a 404 error-page to web.xml does the trick, but it sends actual 404 > status code in header. I need 200. >> On 22 Dec 2014, at 05:57, Stefan Magnus Landrø <stefan.lan...@gmail.com> >> wrote: >> >> Adding a 404 error-page to web.xml should do the trick. >> >> Stefan >> >>> Den 21. des. 2014 kl. 21.50 skrev Dmitry Polovka <messa...@messaged.lv>: >>> >>> Hey everybody, i am beginner. Can somebody advise me on how to manage >>> single page application routing? >>> >>> I need DefaultServlet to work as it works now - serve static content, >>> handle ETags and do other stuff. >>> Since JS will handle routing, on unknown route to Jetty, Jetty will throw >>> 404 and i need to intercept these 404 errors >>> to output content of index.html and let JS do the work. >>> >>> What is the best way to do that? >>> >>> Launcher.java >>> ----------------------------------------------------------------------------- >>> public static void main(String[] args) throws Exception >>> { >>> Server server = new Server(); >>> >>> // Remove Server:Jetty(9...) from Response Headers >>> HttpConfiguration httpConfig = new HttpConfiguration(); >>> httpConfig.setSendServerVersion(false); >>> HttpConnectionFactory httpFactory = new HttpConnectionFactory(httpConfig); >>> >>> ServerConnector connector = new ServerConnector(server, httpFactory); >>> connector.setPort(8080); >>> server.addConnector(connector); >>> >>> WebAppContext context = new WebAppContext("webapp", "/"); >>> context.addServlet(new ServletHolder(new DefaultServlet()), "/*"); >>> >>> // Map WebSocket to listen on `/ws` >>> Broker broker = new Broker(); >>> context.addServlet(new ServletHolder( new Servlet(broker)), "/ws"); >>> >>> // Setting up browser caching. Binds params for >>> org.eclipse.jetty.servlet.DefaultServlet.init() >>> context.setInitParameter("org.eclipse.jetty.servlet.Default.etags", >>> "true"); >>> context.setInitParameter("org.eclipse.jetty.servlet.Default.cacheControl", >>> "public, max-age=0"); >>> >>> // Disallow directory listing >>> context.setInitParameter("org.eclipse.jetty.servlet.Default.dirAllowed", >>> "false"); >>> >>> // Search for index.html/index.jsp pages >>> >>> context.setInitParameter("org.eclipse.jetty.servlet.Default.welcomeServlets", >>> "true"); >>> >>> // Fix for Windows, so Jetty doesn't lock files >>> if (System.getProperty("os.name").toLowerCase().contains("windows")) { >>> >>> context.setInitParameter("org.eclipse.jetty.servlet.Default.useFileMappedBuffer", >>> "false"); >>> } >>> >>> // Will throw an exception when will be unable to start server for some >>> reason >>> context.setThrowUnavailableOnStartupException(true); >>> >>> server.setHandler(context); >>> server.start(); >>> } >>> ————————————————— >>> >>> I also have jersey mapping in web.xml >>> >>> <servlet-mapping> >>> <servlet-name>jersey-api-v1</servlet-name> >>> <url-pattern>/api/v1/*</url-pattern> >>> </servlet-mapping> >>> _______________________________________________ >>> jetty-users mailing list >>> jetty-users@eclipse.org >>> To change your delivery options, retrieve your password, or unsubscribe >>> from this list, visit >>> https://dev.eclipse.org/mailman/listinfo/jetty-users >> _______________________________________________ >> jetty-users mailing list >> jetty-users@eclipse.org >> To change your delivery options, retrieve your password, or unsubscribe from >> this list, visit >> https://dev.eclipse.org/mailman/listinfo/jetty-users > > _______________________________________________ > jetty-users mailing list > jetty-users@eclipse.org > To change your delivery options, retrieve your password, or unsubscribe from > this list, visit > https://dev.eclipse.org/mailman/listinfo/jetty-users _______________________________________________ jetty-users mailing list jetty-users@eclipse.org To change your delivery options, retrieve your password, or unsubscribe from this list, visit https://dev.eclipse.org/mailman/listinfo/jetty-users