即使存在单个 servlet,也会出现 'java.lang.IllegalStateException: Multiple servlets map to path /*' 错误

Getting 'java.lang.IllegalStateException: Multiple servlets map to path /*' error even though single servlet is present

即使我的代码中只有一个 servlet,我仍然收到错误消息。

WARN  2021-04-06 21:52:42,874  [main] org.eclipse.jetty.util.component.AbstractLifeCycle: FAILED ServletHandler@93501be{FAILED}: java.lang.IllegalStateException: Multiple servlets map to path /*: git.service.http.MyServlet68360fb9[mapped:EMBEDDED:null],io.dropwizard.jersey.setup.JerseyServletContainer-713e49c3[mapped:EMBEDDED:null]
java.lang.IllegalStateException: Multiple servlets map to path /*: git.service.http.MyServlet68360fb9[mapped:EMBEDDED:null],io.dropwizard.jersey.setup.JerseyServletContainer-713e49c3[mapped:EMBEDDED:null]

下面是我的代码:

environment
   .getApplicationContext()
   .addServlet(
           new ServletHolder(
                 new MyServlet(
                        injector.getInstance(HttpRepositoryResolver.class))),
           “/*“);

谁能帮我解决一下?

git.service.http.MyServletio.dropwizard.jersey.setup.JerseyServletContainer 都注册到 url 模式 /*

请记住,对于 Servlet,不存在请求的可选处理这样的事情。

如果请求的资源匹配 url-模式,它被发送到那个 Servlet,它必须处理那个请求,它不能去“哦,不,不适合我,让别人处理这个请求” .

我建议将 Jersey 放在 /api/*/rest/* 等特定的东西上作为 url 模式。