2014-02-18 2 views
1

facelets를 사용하여 양식을 만듭니다. 하나 개의 입력 필드는 다음과 같습니다하나의 입력 필드에 여러 개의 오류 메시지가 있습니다.

<p:inputText id="initials" value="#{dilution.initials}" /> 

dilution는 엔티티 빈과 이니셜 필드는 설정이 검증 제약이있다. 하나의 크기 제한과 하나의 정규식 패턴 제약. 내 문제는 입력 필드 옆에 표시 할 두 제약 조건에 대한 오류 메시지를 가져 오는 중입니다. <h:message>을 사용하면 메시지 중 하나만 표시되고 <h:messages>을 사용하면 모든 입력 필드 오류 메시지가 표시되거나 아무 것도 표시되지 않습니다 (<h:messages for="initials" autoUpdate="true" /> 설정을 시도했을 때).

이 작업을 수행하는 간단한 방법이 있습니까?

전체 형태 :

<h:form id="addDilForm"> 
    <p:panel> 
     <p:messages autoUpdate="true" showDetail="TRUE" /> 
    <p:panelGrid> 
     <f:facet name="header" > 
      <p:row><p:column colspan="3">Ny spädningsfaktor</p:column></p:row> 
     </f:facet> 

     <p:row> 
      <p:column colspan="1"> 
       <p:outputLabel for="sampT">Provtyp</p:outputLabel> 
      </p:column> 
      <p:column> 
       <p:selectOneMenu id="sampT" required="true" value="#{dilution.dilution.sampleType.ID}" > 
        <f:selectItem itemLabel="-" itemValue="" /> 
        <f:selectItems value="#{SampleTypeController.samples}" var="samp" itemLabel="#{samp.name}" itemValue="#{samp.ID}" /> 
       </p:selectOneMenu> 
      </p:column> 
      <p:column> 
       <p:message for="sampT" /> 
      </p:column>           
     </p:row> 

     <p:row> 
      <p:column> 
       <p:outputLabel for="initials">Initialer</p:outputLabel> 
      </p:column> 
      <p:column > 
       <p:inputText id="initials" value="#{dilution.initials}" /> 
      </p:column> 
      <p:column> 
       <p:message for="initials" /> 
      </p:column>         
     </p:row> 

     <f:facet name="footer"> 
      <p:row> 
       <p:column colspan="3"> 
        <p:commandButton value="Save" action="#{dilution.save()}" update="addDilForm" icon="ui-icon-check" />         
       </p:column> 
      </p:row> 
     </f:facet> 
    </p:panelGrid> 
    </p:panel> 
</h:form> 

답변

1

for를 유지하면서 그냥 복수의 "S"대신 <h:message><h:messages>을 사용하여 메시지 만

을 중 하나를 표시 <h:message> 사용 속성.

<h:messages for="initials" /> 

는 다른 UI로만 작동합니다.

+0

나는 이것을 시도했지만 아무것도 표시되지 않았습니다. 이제'

'가있는 장소에'

를 넣습니다. 작동을 위해 inorder 이외의 다른 것을 설정/변경해야합니까? – numfar

+0

오키,''에 대해서는 작동하지만 ''에 대해서는 작동하지 않습니다. 하지만 가능한 ''을 사용하고 싶습니다. – numfar

관련 문제