The JBoss Enterprise Web Platform has special integration with JDK to do loadtime transformations. This section explains how to use it.
If you want to do load-time transformations with JBoss Enterprise Web Platform 5 and Sun JDK, these are the steps you must take.
- Set the
enableLoadtimeWeavingattribute/property totrue. By default, JBoss Application Server will not do load-time bytecode manipulation of AOP files unless this is set. IfsuppressTransformationErrorsistrue, failed bytecode transformation will only give an error warning. This flag is needed because sometimes a JBoss deployment will not include all of the classes referenced. - Copy the
pluggable-instrumentor.jarfrom thelib/directory of your JBoss AOP distribution to thebin/directory of your JBoss Enterprise Web Platform. - Next edit
run.shorrun.bat(depending on what OS you're on) and add the following to theJAVA_OPTSenvironment variable:set JAVA_OPTS=%JAVA_OPTS% -Dprogram.name=%PROGNAME% -javaagent:pluggable-instrumentor.jar
Important
The class of the AspectManager Service must be
org.jboss.aop.deployers.AspectManagerJDK5 or org.jboss.aop.deployment.AspectManagerServiceJDK5 as these are what work with the -javaagent option.