2013-04-15 86 views
0
年龄

我有最小值和最大值,说明了我的JPA实体
代码示例由Hibernate提出的验证消息
防止被显示在JSF [

@Min(value=1) 
private int id; 
@Max(value=10) 
private int count; 
//getters and setters 


在JSF页面从这些注解返回的消息和我还添加了我自己的验证(JSF验证),其中我需要我自己的味精
验证案例2消息显示休眠消息遭受最小和最大注释和我f:validateXXX消息

我想要的是保留注释,但防止休眠消息显示在我的页面上,不要跳过验证只跳过显示Hibernate的消息,并保持我自己的消息

+0

你能否通过添加澄清你的问题jsf代码呢?你有_validateBean_和其他_validateXYZ_方法的混合?您是否希望Bean Validation作为JSF或JPA生命周期的一部分发生?如果你不想在JSF端发生Bean Validation,你可以设置属性_javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR_。或者,也许你只是想通过添加自定义的_ValidationMessages_来添加自己的资源包和自己的消息?再次,它确实取决于你想要的。 – Hardy

+0

我没有validateXYZ方法,我只有validateBean这是min和max和f:validateLongRange在jsf页面我想Bean验证发生为JPA生命周期,但在哪里把这个属性javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR在哪里使用它 – primeFaceUser

+0

我究竟想要在实体端保留Bean验证并添加jsf验证f:validateLongRange,如果以任何方式跳过jsf验证,将会有一个验证bean在持久性之前捕获验证,但我不想显示bean验证消息只是由f:validateLongRange引发的消息 – primeFaceUser

回答

0

您应该能够通过添加以下到web.xml中禁用Bean验证作为JSF的一部分:

<context-param> 
    <param-name>javax.faces.validator.DISABLE_DEFAULT_BEAN_VALIDATOR</param-name> 
    <param-value>true</param-value> 
</context-param>