使用ibatis框架配置文件的格式
2015-05-12 14:55
756 查看
报错信息:com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: org.xml.sax.SAXParseException: The content of element type "sqlMapConfig" is incomplete, it must match "(properties?,settings?,resultObjectFactory?,typeAlias*,typeHandler*,transactionManager?,sqlMap+)+".
问了前辈,说是我的配置文件格式不正确,然后找了一篇正确的进行修改:
修改后的配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<properties resource="SqlMap.properties"/>
<settings cacheModelsEnabled ="true" enhancementEnabled="true" lazyLoadingEnabled ="true" errorTracingEnabled ="true" maxRequests ="32" maxSessions ="10" maxTransactions ="5" useStatementNamespaces ="false"/>
<resultObjectFactory type="org.apache.ibatis.reflection.factory.DefaultObjectFactory"></resultObjectFactory>
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="${driver}"/>
<property name="JDBC.ConnectionURL" value="${url}"/>
<property name="JDBC.Username" value="${username}"/>
<property name="JDBC.Password" value="${password}"/>
</dataSource>
</transactionManager>
<objectFactory type="liming.student.manager.configuration.LimingObjectFactory">
<property name="someProperty" value="100"/>
</objectFactory>
<sqlMap resource = "Student.xml"/>
</sqlMapConfig>
运行之后提示错误:
Exception in thread "main" java.lang.ExceptionInInitializerError
at com.xhg.test.TestIbatis.main(TestIbatis.java:11)
Caused by: java.lang.RuntimeException: Error occurred. Cause: com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: org.xml.sax.SAXParseException: Element type "objectFactory" must be declared.
at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:89)
at com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:63)
at com.xhg.daoimpl.StudentDaoImpl.<clinit>(StudentDaoImpl.java:22)
... 1 more
Caused by: com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: org.xml.sax.SAXParseException: Element type "objectFactory" must be declared.
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:53)
at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:86)
... 3 more
Caused by: org.xml.sax.SAXParseException: Element type "objectFactory" must be declared.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(XMLDTDValidator.java:1929)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:764)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1359)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2747)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
at com.ibatis.common.xml.NodeletParser.createDocument(NodeletParser.java:157)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:50)
... 4 more
还是出错了,不知道该怎么修改了、、、哭哭
问了前辈,说是我的配置文件格式不正确,然后找了一篇正确的进行修改:
修改后的配置文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN"
"http://ibatis.apache.org/dtd/sql-map-config-2.dtd">
<sqlMapConfig>
<properties resource="SqlMap.properties"/>
<settings cacheModelsEnabled ="true" enhancementEnabled="true" lazyLoadingEnabled ="true" errorTracingEnabled ="true" maxRequests ="32" maxSessions ="10" maxTransactions ="5" useStatementNamespaces ="false"/>
<resultObjectFactory type="org.apache.ibatis.reflection.factory.DefaultObjectFactory"></resultObjectFactory>
<transactionManager type="JDBC">
<dataSource type="SIMPLE">
<property name="JDBC.Driver" value="${driver}"/>
<property name="JDBC.ConnectionURL" value="${url}"/>
<property name="JDBC.Username" value="${username}"/>
<property name="JDBC.Password" value="${password}"/>
</dataSource>
</transactionManager>
<objectFactory type="liming.student.manager.configuration.LimingObjectFactory">
<property name="someProperty" value="100"/>
</objectFactory>
<sqlMap resource = "Student.xml"/>
</sqlMapConfig>
运行之后提示错误:
Exception in thread "main" java.lang.ExceptionInInitializerError
at com.xhg.test.TestIbatis.main(TestIbatis.java:11)
Caused by: java.lang.RuntimeException: Error occurred. Cause: com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: org.xml.sax.SAXParseException: Element type "objectFactory" must be declared.
at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:89)
at com.ibatis.sqlmap.client.SqlMapClientBuilder.buildSqlMapClient(SqlMapClientBuilder.java:63)
at com.xhg.daoimpl.StudentDaoImpl.<clinit>(StudentDaoImpl.java:22)
... 1 more
Caused by: com.ibatis.common.xml.NodeletException: Error parsing XML. Cause: org.xml.sax.SAXParseException: Element type "objectFactory" must be declared.
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:53)
at com.ibatis.sqlmap.engine.builder.xml.SqlMapConfigParser.parse(SqlMapConfigParser.java:86)
... 3 more
Caused by: org.xml.sax.SAXParseException: Element type "objectFactory" must be declared.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(ErrorHandlerWrapper.java:195)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(ErrorHandlerWrapper.java:131)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:384)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(XMLErrorReporter.java:318)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.handleStartElement(XMLDTDValidator.java:1929)
at com.sun.org.apache.xerces.internal.impl.dtd.XMLDTDValidator.startElement(XMLDTDValidator.java:764)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanStartElement(XMLDocumentFragmentScannerImpl.java:1359)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDriver.next(XMLDocumentFragmentScannerImpl.java:2747)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentScannerImpl.next(XMLDocumentScannerImpl.java:648)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(XMLDocumentFragmentScannerImpl.java:510)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:807)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(XML11Configuration.java:737)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(XMLParser.java:107)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:225)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
at com.ibatis.common.xml.NodeletParser.createDocument(NodeletParser.java:157)
at com.ibatis.common.xml.NodeletParser.parse(NodeletParser.java:50)
... 4 more
还是出错了,不知道该怎么修改了、、、哭哭
相关文章推荐
- IBatis框架的SQL Map配置文件
- iBATIS配置文件的特殊使用方法
- ibatis eclipse插件和配置文件的使用
- .NET 框架中使用配置文件(转)
- Spring Security 2.0 安全框架 使用及文件配置说明
- 在VMWare Workstation上使用RedHat Linux安装和配置Hadoop群集环境05_HDFS文件系统和Mapreduce框架的启动和运行
- struts2 ibatis spring 框架整合配置文件的设置
- android游戏开发框架libgdx的使用(十一)—Skin和UI配置文件的使用
- 【Android】在Android上使用OrmLite数据库框架 之 使用表配置文件
- IBatis的Mapper配置文件中使用大于号好小于号 :>和<
- 代理自动配置文件-pac文件格式以及使用方式
- 随笔:SSI框架中iBATIS配置文件中sql标签配置的一点感触
- 随笔:SSI框架中iBATIS配置文件中sql标签配置的一点感触
- 使用Eclipse3.2(MyEclipse)+ abator自动生成iBatis代码以及配置文件的方法
- .NET 插件系统框架设计(二) 使用对象序列化实现自定义配置文件管理
- 保存网站或系统的全局配置使用JSON格式保存到文件更轻便!
- 【Android】在Android上使用OrmLite数据库框架 之 使用表配置文件
- android游戏开发框架libgdx的使用(十一)—Skin和UI配置文件的使用
- ibatis框架中sql_map配置文件的配置项解释
- Mybatis IBatis的Mapper配置文件中使用大于号好小于号 :>和<