mar*_*rea 1 aop spring hibernate
我正在写一些建议,我希望交易在得到建议之前提交.它似乎适用于保存和删除,但是当我更新时,它会通过建议运行,然后抛出异常.
try {
    retVal = pjp.proceed();
} catch (Exception e) {
    PSPSFaultException fault = new PSPSFaultException(e);
    pmLog.error(ERR_MSG, fault);
    throw fault;
}
正如你在这里看到的,我试图在我们自己的运行时异常中包装异常.
我试过订购:
<tx:annotation-driven transaction-manager="txManager" order="1"/>
和
@Around( "execution(* blah.blah.PersistenceProvider.*(..))")
@Order(value=2)
public Object persistenceWrapper(ProceedingJoinPoint pjp) throws Throwable {
但这似乎没有对堆栈或功能产生任何影响.
@Transactional(propagation = Propagation.REQUIRED)
public class PersistenceProviderImpl extends HibernateDaoSupport implements  PersistenceProvider {
@Override
public void update(Object o) {
    this.getHibernateTemplate().update(o);
}
有没有办法在建议之前获取更新?这些交易都是在dao级别......
好的,所以你做错了两件事:
@Order(1)注释放在@Aspect全班面前(奇怪,但它对我有用)  像这样的东西:
...
<tx:annotation-driven transaction-manager="txManager" order="200"/>  
...
@Order(1)
@Aspect
public class MyAspect {
...
| 归档时间: | 
 | 
| 查看次数: | 7023 次 | 
| 最近记录: |