当前位置:首页 > 开发 > 系统架构 > 架构 > 正文

JBoss5.1.0 GA - 部署项目类库兼容和类库冲突问题解决方法

发表于: 2015-04-03   作者:ronin47   来源:转载   浏览次数:
摘要: 在Tomcat6下开发,但将项目部署至JBoss5下运行的时候,碰到了一系列问题: 环境 JBoss-5.1.0 GASpring-2.5.6 / Spring-3.0.5 一、org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure during classpath scanning; nested

在Tomcat6下开发,但将项目部署至JBoss5下运行的时候,碰到了一系列问题:

环境

JBoss-5.1.0 GA
Spring-2.5.6 / Spring-3.0.5

一、org.springframework.beans.factory.BeanDefinitionStoreException: I/O failure during classpath scanning; nested exception is java.util.zip.ZipException: error in opening zip file


原因/解决方法:解决的方法有两种:
1、将使用Spring-2.5.6的项目部署至JBoss4。
2、将部署至JBoss5的项目中的Sping-2.5.6升级至Spring-3.x。(我使用了这种方法)


二、 javax.servlet.ServletException: OncePerRequestFilter just supports HTTP requests

将Spring升级后,再重新部署,Spring兼容的问题解决,但又来了新的问题,报错信息如下:原因/解决方法:
关键的错误信息是loader constraint violation: loader (instance of org/apache/jasper/servlet/JasperLoader)
previously initiated loading for a different type with name "javax/servlet/http/HttpServletRequest"

提示有重复的类。

删除应用中的servlet.jar,jstl.jar等类库。


三、 java.lang.RuntimeException: mapped-name is required for sqlMapClientTemplate of deployment

剔除重复类库后,再重新部署,这次,部署竞然失败了,报错信息如下:

原因/解决方法:
原因:项目中使用@Resource引用Spring对象,@Resource是JSR-299规范的一部分,因此使用该注解代码在JBoss中的运行时,不再由Spring管理,而是由JBoss管理。

解决方法:将@Resource 改用 @Autowired 和 @Qualifier("") 代替。


参考资料 | References

  1. Archiva on JBoss
  2. JBoss AS 5.0 VFS handling (SPR-5120) backport 2.5.X
  3. JSR-299

 

JBoss5.1.0 GA - 部署项目类库兼容和类库冲突问题解决方法

  • 0

    开心

    开心

  • 0

    板砖

    板砖

  • 0

    感动

    感动

  • 0

    有用

    有用

  • 0

    疑问

    疑问

  • 0

    难过

    难过

  • 0

    无聊

    无聊

  • 0

    震惊

    震惊

编辑推荐
去年同事的一个项目在JBOSS中部署时遇到类版本冲突问题,当时协助他处理了此问题,现在将当时处理的
现在的程序经常要求能兼容不同的数据库,常见的有Access,Sql2000,Sql2005,MySql,Oracle.虽然我不得
问题详细描述:我在一个解决方案中,有两个项目,一个Windows应用项目,一个是类库。但是我在Window
日期:2012-6-26 来源:GBin1.com 今天我们介绍一个能够帮助你自定义标签的js类库:x-tag,使用这个
日期:2012-4-17 来源:GBin1.com 在线演示 本地下载 大家是不是在开发设计过程中遇到如下情况?某
Jusfr 原创,转载请注明来自博客园,文章所用代码见于我的github 。 反序列化失败的问题已经处理,
成功创建一个web项目后,假如我们在web.xml文件中,配置了spring的listener,在pom.xml中也已经作了
Java第三方library ecosystem是一个很广阔的范畴。不久前有人撰文:每个项目中,你必须知道的11个Ja
项目中你不得不知的11个Java第三方类库   单元测试   1.DBUnit <img alt="" border="0" styl
闲话少说,直入主题。作为软件开发者或者IT企业,我们都希望重用已有的组件,节省成本,提升效率。
版权所有 IT知识库 CopyRight © 2009-2015 IT知识库 IT610.com , All Rights Reserved. 京ICP备09083238号