`

spring3.1.1与commons-dbcp1.2的冲突?

阅读更多
  • 背景:    最近项目用到了 spring mvc 和 dbcp数据源。因为以前都是用的struts2,所以没有昨天碰到的这个问题:启动spring的时候解析spring xml时候报错。
  • 环境介绍:  首先maven dependences了spring + spring mvc(version:3.1.1.RELEASE),然后配置好之后启动发现报错,错误时说bean xml的解析有问题:具体错误如下
    Caused by: org.xml.sax.SAXParseException: cos-all-limited.1.2: An ''all'' model group must appear in a particle with '{'min occurs'}'='{'max occurs'}'=1, and that particle must be part of a pair which constitutes the '{'content type'}' of a complex type definition.
    	at org.apache.xerces.parsers.DOMParser.parse(DOMParser.java:267)
    	at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:201)
    	at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75)
    	at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:388)
    	... 49 more
    这个时候我的commons-dbcp用的是:
                    <dependency>
    		   <groupId>commons-dbcp</groupId>
    		   <artifactId>commons-dbcp</artifactId>
    		   <version>1.2</version>
    		</dependency>
      我发现是bean xml解析有问题,我进入commons-dbcp 1.2 的pom中看看,发现其中有个依赖:
        <dependency>
          <groupId>xerces</groupId>
          <artifactId>xerces</artifactId>
          <version>2.0.2</version>
        </dependency>
     于是我在我自己的POM.xml中将dbcp的dependence改为了:
                   <dependency>
    		    <groupId>commons-dbcp</groupId>
    		     <artifactId>commons-dbcp</artifactId>
    		     <version>1.2</version>
    		    <exclusion>
    	    	          <groupId>xerces</groupId>
    			  <artifactId>xerces</artifactId>
    		       </exclusion>
    		</dependency>
     这样子就不报错了。这就是这个xml解析的jar包冲突(具体我没时间去看源代码),后来我去看了下dbcp1.3+的pom,发现只要用1.4的就ok,不会有冲突。
                 <dependency>
    		  <groupId>commons-dbcp</groupId>
    		  <artifactId>commons-dbcp</artifactId>
    		  <version>1.4</version>
    		</dependency>
     
  • 当然,虽然问题表面解决,但是没仔细去看源代码,先记一笔,有时间去弄个究竟。
  • 如果有人也碰到过类似问题,不防留言指点指点。
0
0
分享到:
评论

相关推荐

    Spring+mybatis整合

    commons-dbcp-1.1 commons-logging-1.1.3 commons-pool-1.6 mybatis-3.2.0-SNAPSHOT mybatis-spring-1.1.1 mysql-connector-java-5.1.27 org.springframework.aop-3.1.1.RELEASE org.springframework.asm-3.1.1....

    Spring+mybatis(补充) 整合了web工程所需jar包

    commons-collections-3.2.1 commons-dbcp-1.1 commons-logging-1.1.3 commons-pool-1.6 mybatis-3.2.0-SNAPSHOT mybatis-spring-1.1.1 mysql-connector-java-5.1.27 org.springframework.aop-3.1.1.RELEASE org....

    上个资源补充,整合了web差的jar包

    commons-dbcp-1.1 commons-logging-1.1.3 commons-pool-1.6 mybatis-3.2.0-SNAPSHOT mybatis-spring-1.1.1 mysql-connector-java-5.1.27 org.springframework.aop-3.1.1.RELEASE org.springframework.asm-3.1.1....

    spring和hibernate__jar包,详细说明看jar包列表

    commons-dbcp-1.4.jar commons-digester.jar commons-email-1.2.jar commons-fileupload-1.2.1.jar commons-lang-2.4.jar commons-logging-1.1.jar commons-pool-1.5.4.jar commons-pool-1.6.jar dom4j-1.6.1.jar ...

    开源框架jar包(百度云盘)

     · commons-dbcp-1.4-src.zip  · commons-fileupload-1.2.1-bin.zip  · commons-codec-1.4-bin.zip  · commons-dbcp-1.4-bin.zip  · commons-collections-3.2.1-src.zip  · commons-codec-1.4-src.zip ...

    271个java需要用的jar包

    commons-dbcp-1.2.jar commons-digester-2.0.jar commons-fileupload-1.2.jar commons-fileupload-1.3.2.jar commons-fileupload-1.3.jar commons-io-1.3.1.jar commons-io-2.0.1.jar commons-io-2.2.jar commons-...

    ssh lib struct2 spring3 hibernate4

    struts-2.3.4 hibernate-annotations-3.4.0 hibernate-release-4.1.4 spring-framework-3.1.1 mysql-connector-java-5.1.20 commons-dbcp-1.4 commons-logging-1.1.1 commons-pool-1.6

    Spring集成Struts与Hibernate入门详解

    Spring集成Struts与Hibernate入门详解 Spring框架是Java平台上一个开源的轻量级框架,它提供了许多功能强大且灵活的模块,以帮助开发者快速构建企业级应用程序。Struts是Apache软件基金会的一个开源项目,提供了一...

    Spring3.1.1+Struct+hibernate3.x必须的jar包

    在"Spring3.1.1+Struct+hibernate3.x必须的jar包"中,"hibernate3.x必须的包.rar"可能包含了Hibernate框架所需的各种jar文件,如hibernate-core、hibernate-annotations、hibernate-commons-annotations等。...

    java开发常用jar包

    commons-dbcp.jar commons-pool-1.2.jar DBCP数据库连接池 cglib-nodep-2.1_3.jar CGLIB是一个强大的高质量高性能的代码生成库,在运行时可以用它来扩展Java类 jfreechart-1.0.12.jar 使用java生成图表的工具 ...

    mybaits-spring配置

    这个主题,"mybaits-spring配置",主要涵盖了如何将MyBatis 3.1.1版本与Spring 3.0.5版本集成,并通过使用mybatis-spring-1.1.1.jar库来实现数据访问层(DAO)的无缝配合。下面将详细解释这一整合过程中的关键知识点...

    springmybatis

    mybatis实战教程mybatis in action之五与spring3集成附源码 mybatis实战教程mybatis in action之六与Spring MVC 的集成 mybatis实战教程mybatis in action之七实现mybatis分页源码下载 mybatis实战教程mybatis in ...

    springmvc和mybatis整合

    Spring MVC 作为一款优秀的 MVC 框架,可以很好地实现业务逻辑与表现层的分离;而 MyBatis 作为一款优秀的持久层框架,能够简化 Java 应用程序的数据访问层(DAL)。将两者结合起来,可以构建出一个高效、灵活且可...

Global site tag (gtag.js) - Google Analytics