2016-11-25 16:01
@Nicolas_Husky 父类中的拦截器会回调你的 getApiConfig(),你只要 return 回去正确的 ApiConfig 对象即可
2016-11-25 11:24
@翟进博 这个就奇怪了,ArrayList 没有用泛型,是什么都可以放进去的,感觉还得再仔细调试一下,寻找确切原因,你那里难得重现这个问题,麻烦帮忙确定原因,然后试着改改代码,看能否解决,再反馈给社区
2016-11-25 10:55
@Nicolas_Husky 这个 ApiConfigKit.setThreadLocalApiConfig 建议使用官方提供的拦截器自动设置,你的 Controller 继承一下 ApiController 或者 MsgController 即可
如果你要自行去调用这行代码,需要确保是在出异常地点的使用之前,而且还要确保在 finally 块中移除它,以免出现内存泄漏
2016-11-24 15:25
@芒果过敏 上一个回复讲了这么多,简单来说就是,虽然 enhance 的是 A,但 B的业务方法处于 fa() 事务之中,这个与 B 有没有被 enhance 没有关系,事务依然有效
2016-11-24 15:24
@芒果过敏 假如你有两个 Service 分别叫做 A 和 B,A 和 B 里面分别有两个业务方法 fa() 和 fb(),那么你在 fa() 上使用 Tx 拦截器,并且对 A 进行 enhance(),在如果 fa() 中调用了 f(),那么 f() 仍然处于事务之中, Tx 是一种环绕型 AOP,其下所有被调用的方法都在事务之中,不必担心