以下是我的需求:
我有一个在JBoss 5.1上运行的WebService应用程序(带有jboss-classloading配置export-all = NON_EMPTY且import-all = true)。 我想在其上添加一些拦截器,但我不能改变传统的WS WAR。
我的问题是什么:
我设法在JAR中打包一个简单的拦截器,它基本上记录了旧版WebService上的每个调用。 但为了实现我的目标,我需要使用JAR依赖,如XML解析器,业务对象等......
如何将AOP拦截器及其依赖项打包到一个文件中?
我尝试了什么:
在WAR包中,我必须使用类似的jboss-classloading策略来避免冲突,但在这种情况下,我不能拦截WAR本身中的其他任何东西,所以我无法拦截传统的WS调用
PS:我已经完成了让JBoss AOP正常工作的所有基础知识:
pluggable-instrument.jar
-javaagent:pluggable-instrumentor.jar
aop.xml
启用了loadTimeWeaving并包含了包定义jboss-aop.xml
使用有效的切入点配置(我想要在我的包中)答案 0 :(得分:0)
目前我通过构建SAR包(JBoss Service Archive)找到了解决方案。
SAR文件如下所示:
<强> AOP-interceptors.sar 强>
jboss-service.xml
jboss-aop.xml
SAR文件部署在文件夹中:jboss-5.1 / server / default / deployers / jboss-aop-jboss5.deployer /
我不知道SAR包应该做什么...有没有更好的方法呢?