码头 9 服务 HTML 文件 PWC6117:找不到文件

jetty 9 serving HTML file PWC6117: File not found

我在 spring 应用程序中使用码头。从 Jetty 8 迁移到 Jetty 9(用 ServerConnector 替换 SelectChannelConnector)后,导航到主要网站地址(spring 安全将我重定向到 /login)并登录后,我留下了 404 错误代码:

错误:PWC6117:找不到文件“/Users/jonny/projects/mypro/modules/backoffice/src/main/webapp/login”

码头 9 似乎不支持 web.xml 文件?我就是这样

 <servlet>
    <servlet-name>login</servlet-name>
    <jsp-file>/login.jsp</jsp-file>
</servlet>

<servlet-mapping>
    <servlet-name>login</servlet-name>
    <url-pattern>/login</url-pattern>
</servlet-mapping>

我的 WebApp 对象配置是:

Server server = new Server(); 

WebAppContext webapp = new WebAppContext();
webapp.setContextPath(path);
webapp.setDescriptor("*src/main/webapp*/WEB-INF/web.xml");
webapp.setBaseResource(new ResourceCollection("*src/main/webapp*"));

HandlerList handlers = new HandlerList();
ServerConnector connector = new ServerConnector(server);
connector.setPort(*port*);
server.setConnectors(new Connector[]{connector});
handlers.addHandler(webApp);
server.setHandler(handlers);
server.start();
server.join();

我希望 /login 服务于 login.jsp,该怎么做?

但是 login.jsp 的主体是纯粹的 html 我想要的只是从 /login 上下文

旧: 在搜索提示时,我红色:

但仍然不知道如何使用 web.xml 正确设置码头,有什么想法吗?

如果该代码片段代表了您初始化 Web 应用程序的方式,那么您缺少 很多 JSP 个初始化步骤。

有一个由 Jetty Project 制作的示例项目展示了如何使用 JSP 和嵌入式 Jetty 在

https://github.com/jetty-project/embedded-jetty-jsp

关注...

  • 需要的ClassLoader类型
  • scratchDir 声明
  • ServletContainerInitializer 设置
  • Jsp Servlet Holder 和映射
  • 实例管理器

(仅举几个大的)