2011-05-13 3 views
2

JSF2의 특정 작업에 대한 bean 유효성 검사기를 우회 할 수 있는지 궁금합니다.JSF2에서 Bean 유효성 검사를 무시 하시겠습니까?

유효성 검사 속성이 포함 된 NetBeans 7을 사용하여 내 DB 스키마에서 엔티티를 생성했습니다.

내 JSF 애플리케이션에서 나는 빈을 지원하는 검색 화면에서 엔티티 인스턴스를 사용하여 사용자의 쿼리 매개 변수를 보유합니다. 그런 다음 엔티티 인스턴스에서 리플렉션을 사용하여 사용자 쿼리를 수행하는 동적 쿼리를 생성합니다. 사용자가 검색을 수행하면 항목을 선택하고 유효성 검사를 적용 할 편집 페이지로 이동할 수 있습니다.

내 문제는 검색 화면에서 내 엔터티의 bean 유효성 검사가 시행된다는 것입니다. 따라서 엔터티에 3 개의 필수 필드가 있고 사용자가 3 개의 필드 중 1 개에서만 검색하면 두 개의 "필드가 필요합니다"라는 오류 메시지가 표시됩니다.

나는 유효성 검사 주석이없는 검색 백업 빈에 대한 새 클래스를 만들어이 문제를 해결할 수 있다고 생각하지만 이상적인 해결책은 아닌 것 같습니다. 두 개의 본질적으로 동일한 클래스, 다른 주석이있는 클래스. 당신이 그 (것)들을 확인하지 않으려는 경우 첫 번째 형태 = "true"를 비활성화로 validateBean을하고 당신이보기에 포함되지 :

답변

4

당신은 F를 추가 할 수

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

매력처럼 작동! – GrizzlyGreg

+0

굉장합니다. 다행히 도울 수있어. –

2

을 날에 icefaces 그런 일을하지 않았다 : 나는 :

<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> 
+0

------------------------- 은 저에게 효과적입니다. (mojarra). 그러나이 대답과 Dave의 대답의 차이점은 무엇입니까? -------------------------

관련 문제