【发布时间】:2015-06-22 05:07:28
【问题描述】:
我有一个 jodd 项目,它使用 Proxetta 和 JTX 在服务类上创建事务。问题是当我尝试调试我收到的服务类时:
由于缺少行号属性,无法安装断点
我怀疑 Proxetta 生成我的代理类的方式与它们有关,因为在 Spring 中,如果您没有类的接口,也会发生同样的情况。
我使用 Eclispe 以及 Proxetta 的初始化方式:
public void initProxetta() {
ProxyAspect txServiceProxy = new ProxyAspect(AnnotationTxAdvice.class,
new MethodAnnotationPointcut(Transaction.class) {
@Override
public boolean apply(MethodInfo mi) {
return isPublic(mi) &&
isTopLevelMethod(mi) &&
matchClassName(mi, "*ServiceImpl") &&
super.apply(mi);
}
});
proxetta = ProxyProxetta.withAspects(txServiceProxy);
proxetta.setClassLoader(this.getClass().getClassLoader());
}
【问题讨论】:
-
我会检查这个 - 我在调试服务时没有遇到 IntelliJ IDEA 的问题。我是说;我可以将断点放入服务中,这样就可以了。对调试不起作用的可能是进入代理。再次,将检查!
-
我也测试了将项目导入到 Eclipse Mars 并且结果相同。
标签: jodd