有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

使用嵌入式Jetty访问静态内容的java路径

我使用嵌入式Jetty提供项目中“公共”文件夹中的静态内容:

    Server server = new Server(9999);
    ServletContextHandler context = new ServletContextHandler();
    context.setContextPath("/");

    ServletHolder staticHolder = new ServletHolder(new DefaultServlet());
    staticHolder.setInitParameter("resourceBase", "./public");
    context.addServlet(staticHolder, "/*");

    server.setHandler(context);
    server.start();
    server.join();

这很好用。但是,如果我改变

    context.addServlet(staticHolder, "/*");

   context.addServlet(staticHolder, "/ui/*");

   context.addServlet(staticHolder, "/ui");

或者除了“/*”以外的任何东西,我得到一个404。基本上我可以在http://127.0.0.1:9999/index.html看到我的索引页,我想把它改成http://127.0.0.1:9999/ui/index.html

谢谢


共 (2) 个答案

  1. # 2 楼答案

    很好的回答雪崩。 此外,如果您提供静态内容,则应添加
    staticHolder.setInitParameter("useFileMappedBuffer", "true"); 为了避免Locked Files on Windows