2
我使用JAX-RS更新实体,并且我有一个ValidationException映射器来处理验证错误。RollbackException隐藏ValidationException
在我的JAX-RS方法中,我将实体的更新委托给一个EJB方法,该方法使用内部EntityManager#merge进行工作。
一切工作正常,但是当我有一个验证约束错误,而不是有一个ValidationException,然后由我的JAX-RS包装器处理,而是有一个RollbackException封装我的ValidationException。因此我的异常封装不会被调用。
我想到了几种方法来解决这个问题:
- 验证我的JAX-RS方法实体打电话给我的EJB
- 刷新在EJB方法我的实体管理器,然后赶上回滚在JAX前-RS方法,“解包”验证异常并抛出它。
- 等
我要找来处理这种问题的最好办法。你会怎么做?
感谢,
F.D