如何解决获取“java.lang.IllegalStateException:多个 servlet 映射到路径 /*”错误,即使存在单个 servlet
即使我的代码中只有一个 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.MyServlet
和 io.dropwizard.jersey.setup.JerseyServletContainer
均已注册到网址模式 /*
。
请记住,对于 Servlet,没有请求的可选处理之类的东西。
如果请求的资源与 url-pattern 匹配,它就会被发送到那个 Servlet,它必须处理那个请求,它不能“哦,不,不适合我,让别人来处理这个请求”。
我建议将 Jersey 放在特定的东西上,例如 /api/*
或 /rest/*
作为网址模式。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。