微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

具有JBOSS / Wildfly EJB 3类的字节伙伴

如何解决具有JBOSS / Wildfly EJB 3类的字节伙伴

我试图将所有方法拦截到在widlfly / jboss(在特定情况下为JBOSS EAP 7.3.x)下运行的javaEE应用程序中

但是实际上似乎没有理解EJB 3.x方法

我的代码

      new AgentBuilder.Default()
      .type((ElementMatchers.any()))
      .transform((builder,typeDescription,classLoader,module) -> builder
            .method(ElementMatchers.any()).intercept(Advice.to(MyProfilerTimer.class)))
      .installOn(inst);

因此,我启用了“ any”作为ElementMatcher,但在这种情况下,不考虑EJB

EJB被标注为无状态(它们不是远程ejb)

@SuppressWarnings("all")
@Stateless(name = "MyEJBSession")
@TransactionAttribute(TransactionAttributeType.required)
public class MyEJBSession 
{

我相信由于JBOSS逻辑可以通过代理或委托等实例化它

您知道如何添加我的请求者吗? 我正在使用最新的字节好友版本

谢谢

解决方法

Byte Buddy注册了一个隐式.ignore匹配器,该匹配器不包括合成类型,引导类加载器和Byte Buddy自己的类型。通常,这是人们想要的,但是如果您使用JBoss,它可能会生成标记为合成的类。可能需要注册一个不排除类的自定义忽略匹配器。

您也可以随时向代理构建器注册一个侦听器,以查看是否发现了该类。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。