1.背景

今天要做一个demo,从github上clone一个springmvc mybatis的工程(https://github.com/komamitsu/Spring-MVC-sample-using-iBatis)

打包成war后启动报错:

org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerMapping#0': Initialization of bean failed; nested exception is java.lang.IllegalStateException: Ambiguous mapping found. Cannot map 'personListController' bean method
public java.lang.String com.komamitsu.addressbook.controller.PersonListController.create(com.komamitsu.addressbook.domain.Person,org.springframework.validation.BindingResult)
to {[/person/create],methods=[POST],params=[],headers=[],consumes=[],produces=[],custom=[]}: There is already 'personController' bean method
public java.lang.String com.komamitsu.addressbook.controller.PersonController.create(com.komamitsu.addressbook.domain.Person,org.springframework.validation.BindingResult) mapped.at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:527)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:585)at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:913)at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:464)at org.springframework.web.servlet.FrameworkServlet.configureAndRefreshWebApplicationContext(FrameworkServlet.java:631)at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:588)at org.springframework.web.servlet.FrameworkServlet.createWebApplicationContext(FrameworkServlet.java:645)at org.springframework.web.servlet.FrameworkServlet.initWebApplicationContext(FrameworkServlet.java:508)at org.springframework.web.servlet.FrameworkServlet.initServletBean(FrameworkServlet.java:449)at org.springframework.web.servlet.HttpServletBean.init(HttpServletBean.java:133)at javax.servlet.GenericServlet.init(GenericServlet.java:158)at org.apache.catalina.core.StandardWrapper.initServlet(StandardWrapper.java:1231)at org.apache.catalina.core.StandardWrapper.loadServlet(StandardWrapper.java:1144)at org.apache.catalina.core.StandardWrapper.load(StandardWrapper.java:1031)at org.apache.catalina.core.StandardContext.loadOnStartup(StandardContext.java:4901)at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5188)at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:714)at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:917)at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1701)at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)at java.util.concurrent.FutureTask.run(FutureTask.java:266)at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)at java.lang.Thread.run(Thread.java:745)
Caused by: java.lang.IllegalStateException: Ambiguous mapping found. Cannot map 'personListController' bean method

2. 分析情况

上述情况

1. 原因1:bean重复初始化:使用@controller注解初始化一次,在applicationContext中又定义一次

通过对工程原文查找,发现没有重复初始化的情况。

2. 在不同的Controller中定义的映射重复。

    重点查找了报错的personListController和personController 发现映射都一致,发现问题所在。

3. 解决问题

注释掉其中一个@Controller即可

4. 验证问题

ok

转载于:https://www.cnblogs.com/davidwang456/p/4387654.html

Ambiguous mapping found. Cannot map 'xxxxController' bean method相关推荐

  1. pringMVC“Ambiguous mapping found. Cannot map ‘XXXController‘ bean method”解决方法

    pringMVC"Ambiguous mapping found. Cannot map 'XXXController' bean method"解决方法 参考文章: (1)pri ...

  2. pringMVC“Ambiguous mapping found. Cannot map 'XXXController' bean method”解决方法

    [转 :http://www.fanfanyu.cn/news/staticpagefile/2351.html] 最近在开发项目的过程中SpringMVC抛了个"Ambiguous map ...

  3. java.lang.IllegalStateException: Ambiguous mapping found. Cannot map ' ' bean method

    问题:springmvc 启动时出现Caused by: java.lang.IllegalStateException: Ambiguous mapping found. Cannot 原因:控制层 ...

  4. 【Spring Cloud】EnableFeignClients后报错:Ambiguous mapping. Cannot map XXX method YYY

    这是在使用Feign优化Http调用时遇到的一个错误,启动时报错类似下方: Ambiguous mapping. Cannot map 'XXX' method YYY to {GET /file/x ...

  5. 映射报错怎么解决 Ambiguous mapping. Cannot map ‘basicPersonStreamDataController‘ method

    Ambiguous mapping. Cannot map 'basicPersonStreamDataController' method 出错首先检查 实现接口有没有@service注解 或者是C ...

  6. Ambiguous mapping. Cannot map *** method 报错解决

    开发中,我们常常会遇到很多异常报错,现在就我工作中经常遇到的报错做记录和总结,首先对自己会有很大的帮助,同时希望对读者也起到一定的帮助.废话不多说,先上报错. 1. Ambiguous mapping ...

  7. Eclipse报:Ambiguous mapping. Cannot map 'XXXController' method

    1.起因 今天写代码有点粗心了,把Controller中的代码移动到其他Controller下,忘了注释原来的代码,导致这个bug...eclipse报:Ambiguous mapping. Cann ...

  8. Java Ambiguous mapping. Cannot map ‘xxx‘ method问题解决

    问题描述: Caused by: java.lang.IllegalStateException: Ambiguous mapping. Cannot map 'UserController' met ...

  9. 当在使用feign时做服务降级产生的一个错误: There is already 'XXXXX' bean method

    启动服务报错: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requ ...

最新文章

  1. A - 棋盘问题 POJ - 1321(dfs)
  2. MongoDB (二) MongoDB 优点
  3. Linux基础监控小工具nmon
  4. 我擦!没想到你们都是这样 “劝退” 员工的!
  5. mysql断网_断网的情况上如何访问本机的mysql
  6. C++教程[又能学英文,又能学编程]
  7. 微信支付开发(全网资源) - 统计篇
  8. 计算机体系结构_计算机体系结构知识笔记
  9. php mysql安装配置_转载:PHP,MySQL的安装与配置
  10. 大数据平台安全问题有哪些
  11. Leetcode-213:打家劫舍 II
  12. WSS3 Elevation of Privilege 替代 用户身份模拟Impersonate 进行权限提升
  13. 测试学习——全链路压测
  14. iOS Charles(青花瓷)安装
  15. 压缩word文档大小的方法?
  16. Android 11.0 12.0SystemUI修改状态栏电池图标样式为横屏显示
  17. 信息检索关键词的进阶使用
  18. 基于GEC6818开发板的相册
  19. 万能遥控器【解题报告】
  20. 什么是模块化与模块化的优缺点

热门文章

  1. cad指示箭头快捷键命令_CAD快捷键命令大全
  2. 计算机合成生物学博士,重磅!Tim Lu 出任 CEO,合成生物学新锐今日闪亮登场
  3. mysql8.0创建属性,MySQL 8.0新特性 — 管理端口的使用简介
  4. js截屏 video_js获取video任意时间的画面截图
  5. 计数信号量的获取与释放
  6. java 异步 web_Java web spring异步方法实现步骤解析
  7. sketchup转stl_如何将.obj或.stl文件导入SketchUp的简便方法 - SketchUp自学
  8. 三包围结构的字是什么样的_手帐排版的高段位秘诀:运用艺术字丨大咖分享
  9. 门限的限意思是什么_门限是什么意思_门限英文翻译
  10. 数字图像处理——第三章 空间域图像增强(空间滤波)