public class AccountServiceFacade {
public void updateAccount(Account accnt) {
try {
getAccountService.updateAccount();
}
catch(HibernateOptimisticLockingFailureException e) {
e.printStackTrace();
}
}
}
public class AccountService {
public void updateAccount(Account accnt) {
try {
getAccountDAO().getHibernateTemplate().update(accnt);
System.out.println("Updated sucessfully");
} catch(HibernateOptimisticLockingFailureException e) {
e.printStackTrace();
}
}
}
我在事务中有AccountServiceFacade。 在AccountServiceFacade中,我的流程也没有来阻止阻塞。 只有我在表示层中获得Action类的异常。 但我需要根据异常来发送用户定义的消息。 那么如何才能在sevicefacade层或服务层中获得异常。
答案 0 :(得分:0)
此时您可以尝试捕获StaleObjectStateException或StaleStateException。 但正如你所说,你已经在表示层中有一个例外,为什么不使用它呢?
答案 1 :(得分:0)
您可以使用
catch (Exception e) {
if(e instanceof StaleStateException || e instanceof OptimisticLockingFailureException || e instanceof HibernateOptimisticLockingFailureException || e instanceof org.springframework.orm.hibernate5.HibernateOptimisticLockingFailureException) {
some code
}
}