在JSF2中绕过bean验证?

在JSF2中绕过bean验证?,jsf,bean-validation,Jsf,Bean Validation,我想知道在JSF2中是否有可能绕过bean验证器进行某些操作 我已经使用NetBeans 7从我的DB模式生成了实体,其中包括验证属性 在我的JSF应用程序中,我有一个搜索屏幕,它的后台bean使用实体实例来保存用户的查询参数。然后,我使用实体实例上的反射生成一个动态查询来执行用户的搜索。一旦用户执行了搜索,他们就可以选择一个项目并转到一个编辑页面,我希望在那里执行验证 我的问题是,在搜索屏幕上,对我的实体执行bean验证。因此,如果我的实体有3个必填字段,而用户只搜索其中的1个,我会收到两条“

我想知道在JSF2中是否有可能绕过bean验证器进行某些操作

我已经使用NetBeans 7从我的DB模式生成了实体,其中包括验证属性

在我的JSF应用程序中,我有一个搜索屏幕,它的后台bean使用实体实例来保存用户的查询参数。然后,我使用实体实例上的反射生成一个动态查询来执行用户的搜索。一旦用户执行了搜索,他们就可以选择一个项目并转到一个编辑页面,我希望在那里执行验证

我的问题是,在搜索屏幕上,对我的实体执行bean验证。因此,如果我的实体有3个必填字段,而用户只搜索其中的1个,我会收到两条“field is required”错误消息


我知道我可以通过为我的搜索支持bean创建一个没有验证注释的新类来解决这个问题,但这对我来说似乎不是一个理想的解决方案:我最终会得到两个基本相同的类,只是注释不同。

您可以使用disabled=“true”添加f:validateBean到您不希望验证的第一个表单,然后不将其包含在视图中:

<h:inputText value="#{entity.property}">
   <f:validateBean disabled="#{true}"/>
</h:inputText>

对我来说,《冰脸》不是这样的:我必须:

 <f:validateBean disabled="true" >
       <ice:outputText value="#{messages['busqueda.bodega.tabla.datos.etiqueta.nombre']}"/>   <ice:inputText" value="#busquedaBodegaBean.busquedaBodegaBB. bodegaCriterio.nombre}">
     </ice:inputText>
    </f:validateBean>