如果我@Validated
向我的服务的接口/实现添加注释,那么该服务不再是事务性的。Stacktrace 显示没有TransactionInterceptor
,但我只看到MethodValidationInterceptor
. 如果我删除@Validated
,那么我当然会看到TransactionInterceptor
并MethodValidationInterceptor
消失。这些方面是否相互排斥?
@Service
//@Validated <- here is my problem :)
public interface AdminService {
String test(String key, String result);
}
public class AdminServiceImpl implements AdminService, BeanNameAware, ApplicationContextAware {
@Override
@Transactional(transactionManager = "transactionManager")
public String test(String key, String result) {
return "hehe";
}
}
@Configuration
@EnableAspectJAutoProxy(exposeProxy = true)
@EnableTransactionManagement(order = AspectPrecedence.TRANSACTION_MANAGEMENT_ORDER)
public class AppConfiguration {..}