• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

java.lang.IllegalStateException: Ambiguous handler methods

武飞扬头像
云朵里有星星
帮助1

错误

java.lang.IllegalStateException: Ambiguous handler methods mapped for
‘/favorites/1576138903256051713’: {public com.bsf.dto.R
com.bsf.controller.FavoritesController.delEq(java.lang.Long), public
com.bsf.dto.R
com.bsf.controller.FavoritesController.delFavorites(java.lang.Long)}
at
org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.lookupHandlerMethod(AbstractHandlerMethodMapping.java:432)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.handler.AbstractHandlerMethodMapping.getHandlerInternal(AbstractHandlerMethodMapping.java:383)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.getHandlerInternal(RequestMappingInfoHandlerMapping.java:125)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.mvc.method.RequestMappingInfoHandlerMapping.getHandlerInternal(RequestMappingInfoHandlerMapping.java:67)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.handler.AbstractHandlerMapping.getHandler(AbstractHandlerMapping.java:498)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.DispatcherServlet.getHandler(DispatcherServlet.java:1261)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1043)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:963)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006)
~[spring-webmvc-5.3.20.jar:5.3.20] at
org.springframework.web.servlet.FrameworkServlet.doDelete(FrameworkServlet.java:931)
~[spring-webmvc-5.3.20.jar:5.3.20] at
javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
~[tomcat-embed-core-9.0.63.jar:4.0.FR] at
org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883)
~[spring-webmvc-5.3.20.jar:5.3.20] at
javax.servlet.http.HttpServlet.service(HttpServlet.java:764)
~[tomcat-embed-core-9.0.63.jar:4.0.FR] at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:227)
~[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
~[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53)
~[tomcat-embed-websocket-9.0.63.jar:9.0.63] at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
~[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
~[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201)
~[spring-web-5.3.20.jar:5.3.20] at
org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:117)
~[spring-web-5.3.20.jar:5.3.20] at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:189)
~[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:162)
~[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:197)
~[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:97)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:541)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:135)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:92)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:78)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:360)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:399)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:65)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.coyote.AbstractProtocol C o n n e c t i o n H a n d l e r . p r o c e s s ( A b s t r a c t P r o t o c o l . j a v a : 890 ) [ t o m c a t − e m b e d − c o r e − 9.0.63. j a r : 9.0.63 ] a t o r g . a p a c h e . t o m c a t . u t i l . n e t . N i o E n d p o i n t ConnectionHandler.process(AbstractProtocol.java:890) [tomcat-embed-core-9.0.63.jar:9.0.63] at org.apache.tomcat.util.net.NioEndpoint ConnectionHandler.process(AbstractProtocol.java:890)[tomcatembedcore9.0.63.jar:9.0.63]atorg.apache.tomcat.util.net.NioEndpointSocketProcessor.doRun(NioEndpoint.java:1743)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
org.apache.tomcat.util.threads.ThreadPoolExecutor W o r k e r . r u n ( T h r e a d P o o l E x e c u t o r . j a v a : 659 ) [ t o m c a t − e m b e d − c o r e − 9.0.63. j a r : 9.0.63 ] a t o r g . a p a c h e . t o m c a t . u t i l . t h r e a d s . T a s k T h r e a d Worker.run(ThreadPoolExecutor.java:659) [tomcat-embed-core-9.0.63.jar:9.0.63] at org.apache.tomcat.util.threads.TaskThread Worker.run(ThreadPoolExecutor.java:659)[tomcatembedcore9.0.63.jar:9.0.63]atorg.apache.tomcat.util.threads.TaskThreadWrappingRunnable.run(TaskThread.java:61)
[tomcat-embed-core-9.0.63.jar:9.0.63] at
java.lang.Thread.run(Thread.java:748) [na:1.8.0_301]

存在问题的代码

 //删除收藏夹
    @DeleteMapping("/{favoritesId}")
    public R<String> delFavorites(@PathVariable Long favoritesId) {
        boolean b = favoritesService.delFavorites(favoritesId);
        if (b) {
            R.success("删除收藏夹成功");
        }
        return R.error("删除收藏夹失败");
    }
@DeleteMapping("/{id}")
    public R<String> delEq(@PathVariable Long id) {
        favoritesService.delEq(id);
        return R.success("取消收藏成功");
    }

解决

该问题是因为Mapping的value值的url值一样造成的(参数名不同不会造成影响,因为返回数据是相同形式),所以只需要修改Mapping的value值就可以了

 @DeleteMapping("/del/{id}") //eg

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhhkkfhh
系列文章
更多 icon
同类精品
更多 icon
继续加载