`
zhangzuanqian
  • 浏览: 270035 次
  • 来自: ...
社区版块
存档分类
最新评论

spring 集成 WEB 应用碰到的问题

阅读更多

错误:java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor的解决方法

 

在使用Spring的AOP编程时,会用到这几个lib:
asm-2.2.2.jar
asm-commons-2.2.2.jar
asm-util-2.2.2.jar
Hibernate使用如下lib:
asm.jar
asm-attrs.jar
其中asm-2.2.2.jar与asm.jar存在类上的冲突!!!
使用其中之一或两者都使用,可能会出现如下错误:
java.lang.NoClassDefFoundError: org/objectweb/asm/CodeVisitor
java.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitor
java.lang.NoSuchMethodError: org.objectweb.asm.ClassVisitor.visit。。。。。。
解决办法是:
1.去掉类路径上的关于Hibernate的3个lib
asm.jar
asm-attrs.jar
cglib-2.1.3.jar
2.加入Spring中的以下4个lib
asm-2.2.2.jar
asm-commons-2.2.2.jar
asm-util-2.2.2.jar
cglib-nodep-2.1_3.jar
PS:集成配置
1、将spring的相关jar包,拷贝到web应用的WEB-INF/lib目录下

2、修改web.xml,让应用服务器自动加载spring的BeanFactory对象

<context-param>

<param-name>contextConfigLocation</param-name>

<param-value>/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml</param-value>

</context-param>

<listener>

<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

</listener>



3、在web组件里,可以使用WebApplicationContextUtils工具类来

获得BeanFactory对象的实例,拥有了BeanFactory对象,就拥有

spring的容器管理的能力。



解释:

这种配置的结果是,spring通过ContextLoaderListener将WebApplicationContext对象

(BeanFactory的子类)放入ServletContext中,并取名为一个静态变量的值:

WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE



* 通过WebApplicationContextUtils.getApplicationContext()方法就可以获得WebApplicationContext

对象的值

* 或者通过request.getSession().getServletContext().getAttribute(WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
分享到:
评论

相关推荐

    Spring boot web 访问

    总结来说,"Spring Boot web 访问"涵盖了创建一个基础的Spring Boot Web应用,配置访问静态资源,使用Spring Boot DevTools进行快速开发,以及处理中文乱码问题。这些都是Spring Boot入门开发者需要掌握的基本技能,...

    spring2与quartz在Web整合

    4. **Web 应用集成**:在 Web 应用中,通常会将 Quartz 的 Scheduler 初始化为一个 ServletContextListener,这样在 Web 应用启动时就会自动启动 Scheduler。同时,为了确保在应用关闭时能够停止所有调度,也需要在 ...

    采用共享jar包部署struts2+spring集成项目会遇到的问题

    这篇博客文章“采用共享jar包部署struts2+spring集成项目会遇到的问题”可能涉及了如何解决这些问题的方法。 首先,让我们探讨一下Struts2和Spring集成的基本概念。Struts2是一个基于MVC模式的开源Web应用框架,它...

    Spring Web Flow 介绍.rar

    Spring Web Flow 是一个基于Spring框架的开源库,它专注于构建复杂的Web应用程序中的导航逻辑和状态管理。这个库旨在解决传统MVC框架在处理多步骤交互流程时的局限性,例如用户填写表单、购物车流程、注册或登录过程...

    java解决org.springframework.web.context.ContextLoaderListener

    在Java Web开发中,`org.springframework.web.context.ContextLoaderListener` 是Spring框架的一部分,它负责初始化一个Web应用程序的Spring上下文。这个监听器是基于Servlet容器(如Tomcat、Jetty等)的,当Web应用...

    spring-webflow2.3.0源码

    Spring Webflow 是Spring框架的一个扩展,它专注于处理Web应用程序中的流程管理。Spring Webflow 2.3.0是其一个重要版本,它提供了强大的状态管理和转移动作,使得开发者能够优雅地设计复杂的用户交互流程。在本文中...

    在 Spring Web Flow 项目中应用 Hessian 服务

    Spring Web Flow(SWF)是一个强大的MVC框架,用于构建具有复杂导航逻辑的Web应用程序,而Hessian则是一种轻量级的二进制RPC协议,能够有效地减少网络传输的数据量,提高服务调用的效率。这两者的结合可以为大型...

    Spring.Web.Mvc3.zip bug修改版

    总的来说,这个"Spring.Web.Mvc3.zip bug修改版"是一个解决特定问题的更新,对于那些遇到视图与多控制器配合问题的开发者来说,它提供了一个可能的解决方案。使用这个修复版,开发者可以继续利用Spring.Web.Mvc3的...

    Spring Web Services 2 Cookbook

    9. **故障排查与优化**:学习如何诊断和解决Spring Web Services在开发和运行过程中遇到的问题,以及如何优化服务性能。 10. **与其他Spring组件的集成**:Spring Web Services可以很好地与Spring Framework的其他...

    使用 Spring Boot 快速构建 Spring 框架应用

    Spring 框架以其模块化和灵活性著称,但这也可能导致在配置和集成各个子项目时遇到挑战。Spring Boot 通过自动化配置和约定优于配置的原则,解决了这些问题。 首先,Spring Boot 允许开发者创建能够独立运行的 ...

    eclipse_struts_hibernate_spring集成开发宝典 StrutsInterface.rar

    这些技术的集成使用能够构建出高效、灵活且易于维护的企业级Web应用。 首先,Eclipse是一款广泛使用的开源集成开发环境(IDE),尤其在Java开发领域具有极高的地位。它提供了丰富的代码编辑、调试、重构等功能,...

    spring+xfire集成解决方案

    然而,在配置Spring和XFire的过程中,可能会遇到一些问题。比如,在同一个项目中加入不同版本的Spring核心JAR包时,就可能导致Spring无法正常启动。本文将以一个具体的错误为例,深入探讨其原因,并提出有效的解决...

    Spring Boot应用开发框架 v2.7.17.zip

    这可能包括如何使用Maven或Gradle初始化项目,配置应用主类,以及如何利用Spring Boot的内嵌Servlet容器(如Tomcat)启动Web应用。 对于计算机科学的学生来说,这个压缩包可以作为毕业设计论文的参考资源,他们可以...

    整合flex和spring常遇到的问题

    在进行Flex与Spring集成的过程中,经常会遇到配置上的问题。例如,在配置文件`services-config.xml`中设置URI时,可能会遇到以下情况: **问题描述:** 在`services-config.xml`中设置URI为: ```xml ...

    Hessian和Spring集成示例

    下面将详细讲解Hessian与Spring集成的关键知识点。 首先,理解Hessian是什么至关重要。Hessian是一个二进制的Web服务协议,由Caucho公司开发。它提供了轻量级、高效的RPC(Remote Procedure Call)框架,使得Java...

    整合spring+springWebMVC+cas客户端

    在IT行业中,集成Spring、Spring Web MVC和CAS客户端是一项常见的任务,主要用于构建安全的Web应用程序。下面将详细解释这些技术及其整合过程。 首先,Spring是一个开源的Java框架,它简化了开发过程,提供了依赖...

    Spring中集成Hessian的问题

    在实际应用中,可能会遇到一些问题,如网络连接错误、序列化异常、版本兼容性问题等。解决这些问题通常需要检查服务端和客户端的配置,确保URL正确,服务正常运行,以及Hessian库版本匹配。此外,对于序列化异常,...

    ssh整合时遇到常见错误 ContextLoaderListener not found 解决

    在IT行业中,SSH整合指的是Spring、Struts和Hibernate这三个开源框架的集成,它们共同构建了一个强大的企业级Web应用开发解决方案。然而,在实际操作过程中,开发者经常会遇到各种问题,其中之一就是...

    Spring+SpringMVC+hibernate集成jar包

    Spring、SpringMVC和Hibernate是Java开发中三大核心框架...然而,集成过程中也可能遇到版本兼容性问题,因此选择正确的jar包版本至关重要。在实际项目中,还需要关注性能优化,例如使用二级缓存、合理设计实体关系等。

    Spring基于注解的缓存配置--web应用实例

    在本实例中,我们将深入探讨如何在Spring框架中利用注解来实现缓存配置,特别是在Web应用程序中的实际应用。Spring Cache是一个强大的功能,它允许我们高效地管理应用程序中的数据,减少不必要的数据库查询,提高...

Global site tag (gtag.js) - Google Analytics