在Interceptor中抛出ConstraintViolationException

时间:2014-05-06 05:56:40

标签: java java-ee interceptor bean-validation

我在JEE应用程序中有一些SessionBeans,并且喜欢使用BeanValidation来验证我的参数。因此整个验证过程是通用的,并封装在一个地方。

我看到的唯一缺点是客户端获取EJBException并且必须解开主Exception。还有一些我看不到的问题或脏东西,甚至是更好的方法吗?

1 个答案:

答案 0 :(得分:5)

ConstraintViolationException设为ApplicationException

如果还没有,请创建一个ejb-jar.xml文件(如果ejbs打包在战争中,则在/ WEB-INF中,否则在/ META-INF中):

<ejb-jar>
    <assembly-descriptor>
        <application-exception>
            <exception-class>javax.validation.ConstraintViolationException</exception-class>
            <rollback>true</rollback>
        </application-exception>
    </assembly-descriptor>
</ejb-jar>

您可以为EJB 3.0或更高版本

执行此操作