0

facesContext.validationFailed が null になる理由は何ですか? (エラーがあるpostBackで..)if (#{fn:containsIgnoreCase(facesContext.maximumSeverity,'ERROR')}) showSecurePopup('confirm');facesContext.validationFailedがnullに戻ってくるので、私は醜いものに頼らなければなりませんでした..

テストコードは次のとおりです。

<h:form>
   <h:messages />
   <br></br>

   <h:outputText value="Validation failed: #{facesContext.validationFailed}" />
   <br></br>

   <h:outputLabel for="field1" value="Test Field" />
   <br></br>

   <h:inputText required="true" />

   <h:commandButton action="#{contactBacking.submitComment}" value="Submit"
      <f:ajax render="@form" execute="@form" />
   </h:commandButton>
</h:form>

編集: @BalusC の回答に従って編集し、結果のスクリーンショットを撮りました:

画像

4

1 に答える 1

0

決してではないFacesContext#isValidationFailed()a を返します。その無意味な nullcheck を取り除くだけです。boolean null

<h:outputText value="Validation failed: #{facesContext.validationFailed}" />
于 2012-07-24T22:38:08.467 に答える