Skip to content

Debugging difficulties in AspectJ LTW @Transactional methods [SPR-10596] #15225

@spring-projects-issues

Description

@spring-projects-issues

Dumitru Boldureanu opened SPR-10596 and commented

Since 3.2.2, debugging @Transactional methods weaved with AspectJ is complicated (some might say "not possible").

In version 3.2.2 AbstractTransactionAspect.aj was modified to use @around advice instead of the combination of @before and @after.

After this change I cannot "Step Into" a @Transactional methods and then inside it, "Step Over" line by line.
In Netbeans - this is the main IDE I use, it is possible to "Step Into" the method, but it is not possible to "Step Over" line by line inside the method.
In Eclipse, if you to add a break point inside the method it is possible to step by step inside it, but
for both, it is a problem, when the method ends, instead of getting back to the code that called this method, the debugger takes me to internal AOP/AspectJ classes.

I'm tried different versions of AspectJ, 1.7.0, 1.7.1 and 1.7.2, for all of them the result is the same.

Added a test project:
https://github.com/dboldureanu/spring-framework-issues/tree/master/SPR-10596

  1. Put a break point at line 28, XmlConfigTests.java
  2. Start XmlConfigTests in debug mode.
  3. Step into saveTestData method and there try go line by line.
    Then try the same with an older version of Spring for example 3.2.1.

Affects: 3.2.2, 3.2.3, 4.0 M1

Reference URL: http://forum.springsource.org/showthread.php?137952-Debugging-AspectJ-LTW-classes-methods-issues-with-with-Spring-3-2-2

2 votes, 7 watchers

Metadata

Metadata

Assignees

No one assigned

    Labels

    in: coreIssues in core modules (aop, beans, core, context, expression)in: dataIssues in data modules (jdbc, orm, oxm, tx)status: bulk-closedAn outdated, unresolved issue that's closed in bulk as part of a cleaning process

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions