1

我的代码看起来像这样-

ServletContextHandler root = new ServletContextHandler(handlers, "/", ServletContextHandler.NO_SESSIONS);
root.addServlet(rootServlet, "/*");
ServletContextHandler test = new ServletContextHandler(handlers, "/test", ServletContextHandler.NO_SESSIONS);
test.addServlet(testServlet, "/test");

我希望当我去的时候/testtestServlet应该被执行,但我只看到rootServlet被执行。为什么呢?

我正在使用 Jetty 9 并将我的处理程序设置为-

HandlerCollection handlers = new HandlerCollection();

然后将其设置到服务器上-

server.setHandler(handlers);
4

1 回答 1

0

您是否尝试过从此行中删除星号:

root.addServlet(rootServlet, "/*");

您的/testURL 模式与rootServlet. 所以可能所有以斜杠(也)开头的请求/test都由rootServlet. 如果它没有帮助尝试更改其他内容的 URL 模式rootServlet

于 2013-06-24T14:09:13.240 回答