2 Replies Latest reply on Sep 22, 2003 8:36 AM by ejain

    AOP within Eclipse plug-in

    ejain

      Is it possible to use JBoss AOP within an Eclipse plug-in? If yes, how? The documented approach for using JBoss AOP standalone probably won't work in this case, as I don't have any control over the system class loader.

        • 1. Security Problems with JBOSS
          bill.burke

          I have an mbean which tries to access an EJB in the startup() routine. I have the following dependency setup in my jboss-service.xml file.


          jboss.j2ee:service=EjbModule,module=SynchronyEJB.jar


          My mbean basically performs a lookup task in the startup routine. When I start the application I get the following error on my server.log.
          2004-06-16 17:45:59,049 INFO [org.jboss.ejb.EjbModule] Started jboss.j2ee:module=SynchronyEJB.jar,service=EjbModule
          2004-06-16 17:45:59,049 INFO [STDOUT] Starting start() sync:service=QueueMonitor
          2004-06-16 17:45:59,284 INFO [org.jboss.ejb.EJBDeployer] Deployed: file:/D:/jboss-3.2.3/server/default/tmp/deploy/tmp32525Synchrony.ear-contents/SynchronyEJB.jar
          2004-06-16 17:45:59,471 ERROR [org.jboss.ejb.plugins.SecurityInterceptor] Authentication exception, principal=null
          2004-06-16 17:45:59,471 ERROR [org.jboss.ejb.plugins.LogInterceptor] EJBException, causedBy:
          java.lang.SecurityException: Authentication exception, principal=null
          at org.jboss.ejb.plugins.SecurityInterceptor.checkSecurityAssociation(SecurityInterceptor.java:164)
          at org.jboss.ejb.plugins.SecurityInterceptor.invokeHome(SecurityInterceptor.java:81)
          at org.jboss.ejb.plugins.LogInterceptor.invokeHome(LogInterceptor.java:120)
          at org.jboss.ejb.plugins.ProxyFactoryFinderInterceptor.invokeHome(ProxyFactoryFinderInterceptor.java:93)

          Anyone has any sort of solution to this problem please, help me out.

          Thanks in advance.

          • 2. Re: AOP within Eclipse plug-in
            ejain

            > Overriding the system classloader is a standard Java
            > JDK switch.

            Eclipse does allows you to specify startup parameters, but the problem here is that if you are writing plug-ins (or libraries, as a matter of fact), this may not always be a solution, especially if you need to rely on installation and update mechanisms such as Java Web Start or the Eclipse update system.

            > We are going to write a pre-compiler so that if JBoss
            > AOP at load time is too much of a performance hit for
            > a given application, users have this option.

            That's great, though as outlined above my main concern is not performance (well, that too...) but distribution issues.

            > AspectWerkz, I believe, uses hot swap via the JPDI
            > interface (Java debug).

            There are quite a few options, including the possibility to precompile your aspects (not complete precompilation the way AspectJ does it, but it does removes the requirement for a special startup procedure).