`
net_secret
  • 浏览: 24460 次
社区版块
存档分类
最新评论

使用mybatis时,报诡异IllegalArgumentException异常,配置文件等无错误,解决方法如下

阅读更多
异常信息如下:
2012-01-13 14:56:39.078:WARN::/taobao/editItem.json
java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for com.netease.antispam.taopai.dao.TaobaoMapper.updateTaobaoGameAndReason
at org.apache.ibatis.session.Configuration$StrictMap.get(Configuration.java:593)
at org.apache.ibatis.session.Configuration.getMappedStatement(Configuration.java:393)
at org.apache.ibatis.binding.MapperMethod.setupCommandType(MapperMethod.java:160)
at org.apache.ibatis.binding.MapperMethod.<init>(MapperMethod.java:48)
at org.apache.ibatis.binding.MapperProxy.invoke(MapperProxy.java:37)
at $Proxy13.updateTaobaoGameAndReason(Unknown Source)
at com.netease.antispam.taopai.service.impl.TaobaoServiceImpl.updateTaobaoGameAndReason(TaobaoServiceImpl.java:66)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
at $Proxy15.updateTaobaoGameAndReason(Unknown Source)
at com.netease.antispam.taopai.web.TaobaoController.editItem(TaobaoController.java:87)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.springframework.web.bind.annotation.support.HandlerMethodInvoker.invokeHandlerMethod(HandlerMethodInvoker.java:176)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.invokeHandlerMethod(AnnotationMethodHandlerAdapter.java:426)
at org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter.handle(AnnotationMethodHandlerAdapter.java:414)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:790)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:719)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:644)
at org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:560)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:530)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:427)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:494)
at org.eclipse.jetty.server.session.SessionHandler.handle(SessionHandler.java:182)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:933)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:362)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:867)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:245)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:126)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:113)
at org.eclipse.jetty.server.Server.handle(Server.java:334)
at org.eclipse.jetty.server.HttpConnection.handleRequest(HttpConnection.java:559)
at org.eclipse.jetty.server.HttpConnection$RequestHandler.content(HttpConnection.java:1007)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:747)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:209)
at org.eclipse.jetty.server.HttpConnection.handle(HttpConnection.java:406)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.run(SelectChannelEndPoint.java:462)
at org.eclipse.jetty.util.thread.QueuedThreadPool$2.run(QueuedThreadPool.java:436)
at java.lang.Thread.run(Thread.java:662)


原因:这应该是mybatis3.0.4的一个bug, 更新版本就可以解决。如果遇到这一类的报错,先检查代码和配置,如果都没问题,试试下面的解决方法。

解决方法:
将              <dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.0.4</version>
</dependency>
改为
                <dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.0.6</version>
</dependency>
分享到:
评论

相关推荐

    非注解时自动配置Mybatis spring配置文件和Mybatis自动生成类所需配置文件

    此工具自动生成非注解时Spring整合MyBatis时需要的一些配置文件,对于使用较新版本的spring,可以忽视生成的dao的配置文件,建议采用spring的扫描方式。生成的GeneratorConfigXML修改jdbc驱动位置后可直接用使用...

    spring整合mybatis时需要用到的配置文件

    最后,`sqlMapConfig.xml`是MyBatis的全局配置文件,它包含了MyBatis的运行时设置,如日志配置、类型别名、对象工厂等。此外,它还包含了一个或多个映射文件的引用,如我们的`User.xml`。通过这种方式,MyBatis知道...

    mybatis 报空值异常

    在使用 MyBatis 框架进行数据库操作时,可能会遇到报空值异常的情况。这类问题通常出现在尝试将空值(`null`)插入数据库表中时,尤其是在未指定 JDBC 类型的情况下更为常见。本文将详细介绍这种异常的原因,并提供...

    Mybatis主配置文件、附配置文件、实体类、sql生成工具

    总结,Mybatis的主配置文件、附配置文件、实体类以及SQL生成工具共同构成了一个完整的数据访问层解决方案。了解并熟练掌握这些组件,能够帮助开发者更好地利用Mybatis框架,提高开发效率,同时保持代码的整洁性和可...

    MyBatis主配置文件

    MyBatis 配置文件则是整个框架的配置中心,它包含了数据源、事务管理、SqlSessionFactory 和 SqlSession 的配置等。 1. **MyBatis 配置文件详解** - **数据源配置**:配置数据库连接信息,如驱动类名(jdbc....

    Mybatis-generator 生成Mybatis配置文件

    【Mybatis-generator 生成Mybatis配置文件】 Mybatis Generator 是一款强大的工具,它能够自动根据数据库表结构生成MyBatis的映射文件、实体类以及Mapper接口,极大地提高了开发效率。在项目开发过程中,手动编写...

    SpringMVC+Spring+MyBatis jar包和配置文件

    在提供的压缩包中,文件可能包括Spring、SpringMVC和MyBatis的jar包,以及相关的配置文件,例如spring-context.xml、web.xml、mybatis-config.xml、Mapper接口和XML文件等。这些文件是整合SSM框架的关键,通过它们...

    mybatis核心配置文件

    mybatis核心配置文件,是对mybatis的开发时的一个详细的说明及配置文件

    mybatis自动生成代码和配置文件

    在标题和描述中提到的“mybatis自动生成代码和配置文件”是一个常见的开发需求,主要是为了提高开发效率和减少错误。这个过程通常涉及到MyBatis的逆向工程(Reverse Engineering)工具或者使用一些第三方插件,如...

    mybatis的配置文件

    myBatis的配置文件用于javaWeb开发,例如用在spring,或者mybatis,springmvc所需要

    mybatis数据类型错误及解决方法

    在使用MyBatis框架进行Java开发时,我们经常会遇到数据类型错误的问题,这些错误主要源自于数据库字段类型与Java对象属性类型不匹配、SQL语句中的类型转换不当或MyBatis配置文件中的设置错误。本篇文章将深入探讨...

    Mybatis逆向工程配置文件与jar(注解详细)

    Mybatis逆向工程配置文件与jar(注解详细),jar包包括:mybatis-generator-core-1.3.2.jar,mysql-connector-java-5.1.34.jar,配置文件有generator.xml,还有一个生产语句txt。

    spring和Mybatis的xml配置文件提示约束包

    "spring和Mybatis的xml配置文件提示约束包"这个主题,主要是关于在XML配置文件中使用的DTD(Document Type Definition)文档类型定义,它为XML文件提供了结构约束和语法规范。 DTD是一种元语言,用于定义XML文档的...

    spring+mybatis中以配置文件方式实现增删改查

    在Spring和MyBatis框架集成开发中,配置文件是实现数据访问层(DAO)操作的重要组成部分。本篇文章将深入探讨如何通过配置文件实现增、删、改、查(CRUD)的基本功能。以下是对相关知识点的详细说明: 1. **Spring...

    ssm框架spring+mybatis+mvc

    - 配置Spring:创建Spring的配置文件,配置数据源、事务管理器、MyBatis的SqlSessionFactory和Mapper扫描器等。 - 配置MyBatis:编写MyBatis的配置文件,包括数据源配置、SqlSessionFactory配置以及Mapper接口和...

    Mybatis日志配置文件

    Mybatis配置文件,这个文件直接导入到项目中就可以使用

    第三章 MyBatis的核心配置.docx

    * &lt;settings&gt;:配置MyBatis的全局参数,如cacheEnabled、lazyLoadingEnabled等 * &lt;typeAliases&gt;:用来设置别名 * &lt;plugins&gt;:配置用户所开发的插件 * &lt;environments&gt;:用于对环境进行配置 * &lt;mappers&gt;:配置Mapper...

    mybatis 注解+配置文件方式完整例子

    在本示例中,我们将探讨如何结合注解和配置文件使用MyBatis,包括数据库的SQL文件、方法的注解等关键部分。 首先,我们需要在项目中引入MyBatis的依赖库。通常,这可以通过在`pom.xml`或`build.gradle`文件中添加...

    mybatis自动生成代码配置文件

    mybatis自动生成代码配置文件,通过配置文件详细讲解以生成各层代码。

    Mybatis的log4j日志配置文件

    Mybatis的log4j日志配置文件

Global site tag (gtag.js) - Google Analytics