jdon框架异常处理的缺陷
最近学习了一下jdon,跑了跑她自带的例子,发现一些问题。
jdon的拦截器catch住了Exception和Throwable级别的异常,如下所示:
|
这样当被拦截的方法抛出业务异常时,被该拦截器拦截了,业务层不能捕捉到异常,如下所示:
|
当userRepository.insert(user)执行出错的时候(比如说ora-00001 违反唯一索引),该SQLException被BeforeAfterMethodTarget里面的invoke函数所check住,createUser里面根本捕获不到异常,em.setErrors(Constants.USER_SAVE_ERROR)也不会被执行到,返回到界面上后显示Operate Successfully! return index。
这样的问题应该怎么解决,jdon的异常处理是不是做的不够好?
jdon的拦截器如果把Exception和Throwable异常都check住的话,那业务层怎么处理下层通过异常返回的出错信息了?
[该贴被weiweishouwang于2011-04-27 15:42修改过]