`

使用spring aop碰到的几个问题及解决办法

阅读更多

这里的问题只是针对spring 2.0.7 至于其他版本, 不知道有没有这些问题.

现象:

写道
Caused by: java.lang.IllegalArgumentException
: error at ::0 formal unbound in pointcut
at org.aspectj.weaver.tools.PointcutParser.parsePointcutExpression(PointcutParser.java:315)
 

原因:
语法的问题
解决方法:一个个去掉,看哪个引起的错

 

现象:

写道
Caused by: java.lang.IllegalArgumentException: error at ::0 incompatible number of arguments to pointcut, expected 1 found 0

Caused by: java.lang.NoClassDefFoundError: org/objectweb/asm/commons/EmptyVisitor

 添加依赖:

			<dependency>
			  <groupId>asm</groupId>
			  <artifactId>asm</artifactId>
			  <version>2.2.3</version>
			</dependency>
			<dependency>
			  <groupId>asm</groupId>
			  <artifactId>asm-commons</artifactId>
			  <version>2.2.3</version>
			</dependency>
			<dependency>
			  <groupId>asm</groupId>
			  <artifactId>asm-util</artifactId>
			  <version>2.2.3</version>
			</dependency>

 现象:

写道
Caused by: java.lang.NoClassDefFoundError: Could not initialize class net.sf.cglib.proxy.Enhancer

 添加依赖:

			<dependency>
			  <groupId>cglib</groupId>
			  <artifactId>cglib-nodep</artifactId>
			  <version>2.1_3</version>
			</dependency>

 但是必须去掉依赖:

			<dependency>
				<groupId>cglib</groupId>
				<artifactId>cglib</artifactId>
				<version>2.1_3</version>
			</dependency>
 

 

 

分享到:
评论

相关推荐

    Spring AOP代理详细介绍

    一开始我对spring AOP还是属于一知半解的状态,这几天遇到一个问题,加上又查看了一些Spring相关知识,感觉对这个问题有了更深刻的认识。所以写下来分享一下。 我们知道,Spring支持多种AOP方式,Spring自己的基于...

    Spring中的AOP不生效

    ### Spring中的AOP不生效的原因及解决方法 在Java开发中,面向切面编程(Aspect Oriented Programming,简称AOP)是一种重要的编程思想和技术手段,主要用于处理横切关注点问题,如日志记录、性能统计、安全控制、...

    struts2+spring集成bug——使用AOP时可能遇到的问题分析

    查看日志,使用调试工具,以及查阅官方文档都是定位和解决问题的有效方法。 最后,对于给出的文件名"test",可能是测试代码或者示例项目。在实际排查问题时,检查和分析这些测试代码可以帮助我们找到问题的根源。...

    Spring AOP 问题

    Spring AOP的问题通常涉及到以下几个方面: 1. **配置错误**:不正确的配置可能导致通知不生效,例如忘记在配置文件中启用AOP代理或切点表达式定义错误。 2. **代理问题**:Spring提供了两种类型的代理,JDK动态...

    Spring5AOP项目源码

    在Spring5_AOP项目中,我们可以看到以下几个关键知识点: 1. **切面(Aspect)**:切面是AOP的核心,它封装了特定的关注点,比如一个日志记录功能。在Spring中,切面可以通过编写切面类来实现,该类通常包含通知...

    Spring AOP管理Hibernate事务(TransactionInSpringAOP)

    通过阅读博文"TransactionInSpringAOP",开发者可以获得关于如何配置Spring AOP以管理Hibernate事务的具体步骤,以及可能遇到的问题和解决方案。这包括但不限于XML配置、Java配置、注解配置等不同方式,并且可能涵盖...

    springaop学习

    **Spring AOP**(面向切面编程)是 Spring 框架中的一个关键特性,它提供了一种优雅的方式来处理横切关注点(cross-cutting concerns)。在实际应用中,我们经常会遇到一些与业务逻辑无关但又必须处理的需求,如日志...

    44 Spring控制器Controller如何设置AOP?慕课专栏1

    有几种方法可以解决这个问题: 1. **将Controller移到`DispatcherServlet`的配置文件**:将Controller的定义从全局的`applicationContext.xml`移动到`spring-dispatcher-servlet.xml`,这样Controller就会在`...

    spring 事务管理例子(TransactionProxyFactoryBean代理机制 和 tx/aop)

    在`tx`和`aop`的配合下,Spring会通过AOP代理拦截带有`@Transactional`的方法调用,根据注解中的配置启动一个新的事务,执行方法,如果方法正常结束则提交事务,遇到异常则回滚事务。 在基于Struts1.2和Spring2.0的...

    AOP实现自我调用的事物嵌套问题

    当我们遇到"AOP实现自我调用的事物嵌套问题"时,这通常涉及到Spring框架中的事务管理,特别是自调用方法在事务处理时可能会引发的问题。 首先,让我们理解Spring AOP的事务管理是如何工作的。Spring使用代理模式来...

    Spring简单仿写,实现基本IOC,依赖注入和AOP 未解决循环依赖

    本文将深入探讨Spring框架的核心特性——依赖注入(Dependency Injection, DI)和面向切面编程(Aspect-Oriented Programming, AOP),以及如何解决循环依赖问题。 首先,依赖注入是Spring框架的核心理念之一,它的...

    Spring Bean重复执行两次(实例被构造两次)问题分析

    综上所述,Spring Bean重复执行两次的问题通常是由于配置错误、依赖注入循环、初始化回调的不当使用、静态工厂方法的误用、AOP代理的配置问题或是Bean作用域设置不准确导致的。通过仔细检查和修正这些问题,可以避免...

    spring面试常见问题

    Spring框架有几个关键的优点,包括: 1. 轻量级:Spring框架本身非常轻巧,核心模块的大小大约为2MB,便于整合和使用。 2. 控制反转(IOC):Spring通过控制反转的技术实现了松耦合,这是指对象间的依赖关系由容器...

    java基于spring注解AOP的异常处理的方法

    在这个例子中,`handleException`方法使用了`@ExceptionHandler(Exception.class)`注解,表明它将处理所有抛出`Exception`的控制器方法。当发生异常时,该方法会被调用,记录异常信息,并返回一个包含错误信息的HTTP...

    手写spring框架ioc+aop+mvc

    在实践中,你可能会遇到如何配置 XML、如何使用注解简化配置、以及如何优化性能等问题,这些都是 Spring 开发者日常面对的挑战。完成这个项目后,你将能够更自信地应对实际工作中遇到的 Spring 相关问题。

    解决osgi spring 事务配置问题

    在OSGi(Open Service Gateway Initiative)环境中配置Spring的事务管理可能会遇到一些挑战,因为OSGi是一种模块化系统,它的动态性、服务发现机制与Spring的静态配置方式有所不同。本篇文章将详细探讨如何在OSGi...

    spring源码编译缺失包

    在深入探讨Spring源码编译过程中可能遇到的缺失包问题之前,我们首先需要理解Spring框架的基本概念和其在Java开发中的重要性。Spring是Java领域中最广泛应用的轻量级框架,它提供了丰富的功能,包括依赖注入、AOP...

    Spring框架基于AOP实现简单日志管理步骤解析

    遇到的问题和解决过程: 1. 如何设置切入点:在使用AOP机制时,需要设置切入点以便捕获日志信息。解决方法是使用@Around注解来捕获日志信息,并将其记录到数据库中。 2. 如何获取参数:在使用AOP机制时,需要获取...

    spring 学习第二天

    AOP 主要有以下几个核心概念: 1. **切面(Aspect)**:一个切面是封装了横切关注点的模块,它由两个部分组成:Pointcut 和 Advice。 2. **连接点(Join Point)**:程序执行过程中的某个特定位置,如方法调用或...

Global site tag (gtag.js) - Google Analytics