`
qingfeng200468
  • 浏览: 51995 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ibatis 错误之一

阅读更多
我无意之中碰上以下问题,郁闷了一晚上,终于找到答案,希望对大家有些帮助!
   原来是:'/sqlMapConfig/sqlMap/' 中的某个.xml 文件中的insert元素中信息写错了!

org.springframework.beans.factory.BeanCreationException:
Error creating bean with name 'sqlMapClient' defined in file [H:\qingfeng\src\test\com\qingfeng\dao\dataAccessContext-ibatis.xml]:
Invocation of init method failed; nested exception is java.lang.RuntimeException: Error occurred.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: java.util.NoSuchElementException
Caused by: java.lang.RuntimeException: Error occurred. 
Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.
Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.
  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML. 
  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'. 
  Cause: java.util.NoSuchElementException
at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:109)
at com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:90)
at org.springframework.orm.ibatis.SqlMapClientFactoryBean.buildSqlMapClient(SqlMapClientFactoryBean.java:326)
at org.springframework.orm.ibatis.SqlMapClientFactoryBean.afterPropertiesSet(SqlMapClientFactoryBean.java:280)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1175)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1145)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:427)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:251)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:144)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:248)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:160)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:276)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:360)
at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:93)
at org.springframework.context.support.FileSystemXmlApplicationContext.<init>(FileSystemXmlApplicationContext.java:77)
at test.com.qingfeng.dao.BaseTest.setUp(BaseTest.java:18)
at test.com.qingfeng.dao.ibats.SqlMapAccountDaoTests.setUp(SqlMapAccountDaoTests.java:22)
at junit.framework.TestCase.runBare(TestCase.java:125)
at junit.framework.TestResult$1.protect(TestResult.java:106)
at junit.framework.TestResult.runProtected(TestResult.java:124)
at junit.framework.TestResult.run(TestResult.java:109)
at junit.framework.TestCase.run(TestCase.java:118)
at junit.framework.TestSuite.runTest(TestSuite.java:208)
at junit.framework.TestSuite.run(TestSuite.java:203)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:128)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:460)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:673)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:386)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:196)
Caused by: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: java.util.NoSuchElementException
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:62)
at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:106)
... 29 more
Caused by: java.lang.RuntimeException: Error parsing XPath '/sqlMapConfig/sqlMap'.  Cause: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: java.util.NoSuchElementException
at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:123)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:84)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:102)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:72)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:60)
... 30 more
Caused by: com.ibatis.common.xml.NodeletException: Error parsing XML.  Cause: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: java.util.NoSuchElementException
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:62)
at com.ibatis.sqlmap.engine.builder.xml.SqlMapParser.parse(SqlMapParser.java:55)
at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser$11.process(SqlMapConfigParser.java:394)
at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:121)
... 34 more
Caused by: java.lang.RuntimeException: Error parsing XPath '/sqlMap/insert'.  Cause: java.util.NoSuchElementException
at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:123)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:84)
at com.ibatis.common.xml.NodeletParser.process(NodeletParser.java:102)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:72)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:60)
... 37 more
Caused by: java.util.NoSuchElementException
at java.util.StringTokenizer.nextToken(Unknown Source)
at com.ibatis.sqlmap.engine.mapping.parameter.InlineParameterMapParser.parseInlineParameterMap(InlineParameterMapParser.java:55)
at com.ibatis.sqlmap.engine.builder.xml.SqlStatementParser.parseDynamicTags(SqlStatementParser.java:240)
at com.ibatis.sqlmap.engine.builder.xml.SqlStatementParser.processSqlStatement(SqlStatementParser.java:204)
at com.ibatis.sqlmap.engine.builder.xml.SqlStatementParser.parseGeneralStatement(SqlStatementParser.java:120)
at com.ibatis.sqlmap.engine.builder.xml.SqlMapParser$19.process(SqlMapParser.java:563)
at com.ibatis.common.xml.NodeletParser.processNodelet(NodeletParser.java:121)
... 41 more

0
3
分享到:
评论
7 楼 远去的渡口 2010-10-21  
我也遇到了,非常感谢呀
然后我就再把目标锁定到sql上,发现真有两个地方写错了,现在已经ok啦
6 楼 karas 2010-05-21  
谢谢了~~~~~~~~
5 楼 hydex 2009-09-23  
恩,谢谢了
4 楼 reniaL 2009-06-12  
谢谢,确实是SQL写错了。

很郁闷,为什么异常信息不能定位到准确的错误位置呢,浪费时间啊。。。
3 楼 helloJ 2008-10-16  
   里面有个中文的 逗号  。。。
2 楼 helloJ 2008-10-16  
哈哈  刚好碰到,谢谢提醒
有人在<insert  元素中使用了 update
晕死
1 楼 tianjianguxin 2008-02-21  
引用
sdfsdfdsf[img][/img]sfsdfsdf[flash=200,200][/flash][img][/img]
ddddddd

相关推荐

    ibatis.util包

    7. **TypeHandlerRegistry**: 这是Ibatis的核心组件之一,负责管理所有的类型处理器(TypeHandler)。TypeHandler是Ibatis中处理Java类型和数据库类型之间转换的关键,`TypeHandlerRegistry`可以根据Java类型或JDBC...

    ibatis出错调试心得

    这些问题往往由于iBatis错误信息的隐晦性而难以快速定位与解决。本文将根据所提供的标题、描述及部分内容,详细阐述在使用iBatis时可能遇到的一些常见错误及其调试技巧。 ### 一、SQL映射文件(sqlMap)中的配置...

    ibatis代码自动生成

    在大型项目中,数据库表数量众多,手动编写与之对应的Java实体类、Mapper接口和Mapper XML文件是一项繁琐的工作。代码自动生成工具能根据数据库表结构自动生成这些代码,极大地减少了开发时间,同时也减少了手动...

    ibatis常用sql语句

    iBATIS是早期流行的Java持久层框架之一,它通过SQL映射文件将SQL语句与Java对象关联起来,实现数据的持久化操作。iBATIS的核心功能在于其强大的SQL映射能力和动态SQL生成机制,这使得开发人员能够灵活地处理复杂的...

    ibatis配置文件

    每个映射文件中定义了一组SQL语句及其映射规则,是ibatis的核心组成部分之一。 #### 三、总结 通过对`sqlMapConfig.xml`文件的深入解析,我们不仅了解了ibatis配置文件的基本结构,还掌握了如何通过配置文件来调整...

    ibatis_开发指南

    8. OR映射 - 对象关系映射(ORM)是iBATIS的核心特性之一,它将Java对象与数据库中的表进行映射,简化数据库操作。 9. iBATIS高级特性 - 包括数据关联(一对多、一对一)、延迟加载、动态映射、事务管理和缓存策略...

    ibatis动态注入

    在IT行业中,数据库操作是应用程序的核心部分,而处理动态SQL是一项常见的挑战。iBATIS,作为一款优秀的持久层框架,提供...iBATIS的动态注入功能是其在数据库操作中的强大优势,也是许多开发者选择它的主要原因之一。

    mule进阶之ibatis component

    标题 "mule进阶之ibatis component" 指向的是一个关于Mule ESB集成iBatis组件的高级主题。Mule ESB是一个企业级的集成平台,它允许开发者轻松地连接各种系统和应用程序。iBatis则是一个SQL映射框架,它可以将Java...

    ibatis配置文件、映射文件详解

    `sqlMapConfig.xml`是ibatis框架的核心配置文件之一,它不仅定义了与数据库交互的基本配置,还涉及到了性能调优的关键设置。通过对这些配置项的理解和合理设置,可以显著提高应用程序的性能和稳定性。开发者应根据...

    IBATIS.NET 学习文档

    文档的第三部分,“Working with Data Maps”,是核心内容之一,详细解释了如何操作数据映射。首先介绍了数据映射的定义文件,以及映射语句的不同类型。这部分还涉及了存储过程的处理、SQL语句的编写、映射类型元素...

    log4j和ibatis配置文档

    Log4j作为Java世界里最流行的日志框架之一,它提供了强大的日志记录功能,帮助开发者追踪应用程序运行过程中的信息、警告、错误等。而iBatis则是一个优秀的持久层框架,它简化了SQL操作,使得数据库访问更为灵活。...

    搭建spring mvc+spring+ibatis所需所有jar包

    1. **依赖注入(DI)**:Spring的核心特性之一,通过容器管理对象及其依赖关系,使得代码松耦合。 2. **面向切面编程(AOP)**:Spring支持AOP,允许定义横切关注点,如日志、事务管理等,提高代码复用性。 3. **...

    ibatis基础教程

    ORM(Object Relational Mapping)是iBatis的核心概念之一,它指的是将关系型数据库中的表结构映射到Java对象上,使得开发者可以通过操作Java对象来间接地操作数据库。通过ORM,开发者可以避免直接编写复杂的SQL语句...

    ibatis教程pdf

    动态SQL是iBATIS的亮点之一,它允许开发者根据实际情况动态构建SQL语句,极大提升了SQL语句的灵活性和应用的适应性。 事务管理是数据库操作中的重要概念,iBATIS同样提供了事务管理的机制。它允许开发者通过配置来...

    搭建IBatis一:mysql环境搭建之被虐的酸爽篇

    标题中的“搭建IBatis一:mysql环境搭建之被虐的酸爽篇”表明这是一个关于如何在计算机环境中配置和使用IBatis框架与MySQL数据库的教程,其中可能涉及了作者在搭建过程中遇到的问题和解决方法。从描述中的链接可以...

    Spring iBatis Learning Notes

    Java JDBC作为低级别的API,在实际应用中存在诸多不便之处,因此业界尝试通过多种方式对其进行增强,比如EJB、JDO、Hibernate、Toplink(来自Oracle)、iBatis、SQL Executor以及Spring JDBC支持等技术。 #### 二、...

    iBATIS_in_Action.pdf

    **映射语句**是iBATIS的核心功能之一。它允许开发者以声明式的方式定义SQL语句以及如何将查询结果映射到Java对象上。这种方式可以极大地提高代码的可读性和可维护性。 - **基本查询**:定义简单的SELECT语句及其...

    ibatis.net Tutorial 指导 用法

    Ibatis.net 的强大之处在于动态SQL,可以使用条件标签(`&lt;if&gt;`、`&lt;choose&gt;`、`&lt;when&gt;`、`&lt;otherwise&gt;`)和`&lt;where&gt;`、`&lt;set&gt;`等元素构造条件语句。 ## 9. 结果映射 结果映射用于将查询结果自动映射到Java对象。可以...

    ibatis 开发指南.doc

    Ibatis 由夏昕创建,旨在解决传统 JDBC 编程的繁琐之处,通过 XML 或注解配置,将 SQL 语句与 Java 代码解耦,提高了开发效率和可维护性。Ibatis 支持多种数据库,如 MySQL、Oracle、SQL Server 等。 ### **2. 准备...

    iBATIS in Action

    Codd提出规范化数据存储的概念以来,SQL已经成为企业级应用开发的基础之一,并且随着技术的发展而不断发展完善。 iBATIS认识到,在许多情况下,即使应用程序经历了重大的重构甚至重新编写,其背后的数据库结构和...

Global site tag (gtag.js) - Google Analytics