Announcement Announcement Module
Collapse
No announcement yet.
Roo and AOP Page Title Module
Move Remove Collapse
X
Conversation Detail Module
Collapse
  • Filter
  • Time
  • Show
Clear All
new posts

  • Roo and AOP

    Hi there,

    I'm trying to migrate an existing (web-)project to roo. After some painful hours migrating my maven-settings roo starts to like my project and I'm able to run my unit-test. So far, so good.

    In my project I was using spring-aop to do some security, all with proxies, no compiler. When starting my webapp within eclipse it tells me, that some classes are missing, f.e. org.aspectj.lang.annotation.Aspect.

    When looking to my classpath all the aspectj.jar-stuff is removed from classpath. I guess thats because Roo uses Aspectj-Compiler to add AOP and there's no need for runtime-weaving. So whats the right approach to migrate my existing aop-code? Should I tell Roo/Maven to add all the aspectj-jars to my webapp-lib folder or should I migrate aop to compile-time weaving?

    Whats ever the answer, how do I do that?

    1. In my pom.xml there are those dependencies:
    Code:
    		<dependency>
    			<groupId>org.aspectj</groupId>
    			<artifactId>aspectjrt</artifactId>
    			<version>${aspectj.version}</version>
    		</dependency>
    		<dependency>
    			<groupId>org.aspectj</groupId>
    			<artifactId>aspectjweaver</artifactId>
    			<version>${aspectj.version}</version>
    		</dependency>
    I really dont know where the magic in all that roo-maven-stuff happens that aspectj is removed from eclipses classpath. So what do I have to change to leave that jars in classpath?

    2. My aspect looks like this and works when using runtime-weaving:
    Code:
    @Aspect
    public class SecurityAspect {
    	@Around("execution(@AuthorizedMethod public * de.diandan.web.controller.*.*(..))")
    	public Object checkRights(ProceedingJoinPoint  jp) throws Throwable {
            }
    What do I have to do to tell aspectj to weave this aspect on compile-time?

    Regards,
    Michael
Working...
X