删除Jetty上的Html扩展

8 java jetty embedded-jetty

我想能够去

https://localhost:8080/users/pages/profile (没有服务器失败)而不是 https://localhost:8080/users/pages/profile.html

所以我试过了

ServletContextHandler pagesContext = new ServletContextHandler();
pagesContext.setContextPath("/users/pages");
ResourceHandler resourceHandler = new ResourceHandler();
resourceHandler.setResourceBase("./src/main/webapp/pages");
resourceHandler.setDirectoriesListed(true);
pagesContext.setHandler(resourceHandler);
pagesContext.addServlet(new ServletHolder("default", DefaultServlet.class), "*.html"); 
// TODO this is not working currently
jettyServer.addHandler(pagesContext);
Run Code Online (Sandbox Code Playgroud)

但它不起作用!它抱怨profile页面不存在但profile.html工作正常

Pře*_*tný 1

您可以通过 url 路由来完成。这是类似的问题,其中已经解释了如何做到这一点:Jetty '{servlet}/{parameter}' urlrouting

简而言之,您将只定义新的 servlet。(不带或带参数)