因为关于这方面的资料较少,所以我写一份笔记给大家和自己做个参考。
1 jboss的版本: jboss-4.2.2.GA
jboss aop的版本:jboss-aop-2.0.0.CR1
( 不知为何,用这个版本能通过,其他版本配置不成功,大家如有其他比较好的配置方法,能否给我发一份配置流程,谢谢!
E-mail: huic84@yahoo.com.cn )
虽然jboss中自带了jboss aop但是还是需要下载jboss aop来配置,解压jboss aop然后选择jboss-aop-2.0.0.CR1\jboss-40-install\jboss-aop-jdk50.deployer目录里面的文件复制到jboss的jboss-aop-jdk50.deployer目录下,覆盖其文件,没有被覆盖的文件不能删除。
2 然后配置jboss的bin目录, 在run.bat文件中加入set JAVA_OPTS=%JAVA_OPTS% -Dprogram.name=%PROGNAME% (-javaagent:pluggable-instrumentor.jar) 小口号里是要加入的内容,前面是加入的位置(是在其后加入小口号的内容),记住要加一个空格。
然后去jboss aop文件的jboss-aop-2.0.0.CR1\lib-50中复制pluggable-instrumentor.jar文件到jboss的bin目录中。
3 现在配置jboss aop的文件,进入jboss的jboss-4.2.2.GA\server\default\deploy\jboss-aop-jdk50.deployer\META-INF中修改jboss-service.xml文件,
<attribute name="EnableLoadtimeWeaving">true</attribute> 这个选项的false改成true 。
4 那么工程的jar包和aop.xml文件还是放在deploy目录下,jar包中不存放aop.xml文件。
5 运行jboss服务器,需用run.bat运行,在此方法下才能看到拦截输出的内容。
注意运行是会有Problem creating service jboss.aop:service=AspectManager java.lang.NullPointerException 的错误, 但是不影响程序的运行。
这是我对jboss aop配置的一点心得,希望能和大家交流,给大家提供帮助。