如何自定义JSF验证错误消息

23

当验证失败时,我该如何自定义出现的验证消息?

以下是我的代码:

<h:form>
    <p><h:inputText
           id="userNo"
           title="Type a number from 0 to 10:">
       <f:validateLongRange
           minimum="3"
           maximum="6"/>
       </h:inputText>

       <h:commandButton id="submit" value="Submit"
           action="response"/>
    </p>
    <h:message showSummary="true" showDetail="false"
        id="errors1"
        for="userNo"/>
</h:form>

目前消息看起来是这样的:

j_idt10:userNo: Validation Error: Specified attribute is not between the expected values of 3 and 6. 

这并不是特别用户友好。

3个回答

46

让我感到惊讶的是,没有办法在属性或其他地方“即时”设置消息。嗯... - Eleeist
2
那肯定更有意义。但是如果我有多个验证器附加到输入,并且我想自定义每个验证器的消息怎么办? - Eleeist
然后您需要覆盖每个验证器的默认消息(在Messages.properties文件中),就像我发布的文章中所述。 - Daniel

15
除了Daniel的答案之外,您还可以使用

8
您可以使用输入文本的validatorMessage属性。对于必填消息,请使用requiredMessage属性,它与验证器消息不同。
<h:input text required ="true" validatorMessage="Enter user friendly message">
    <f:validateLongRange
        minimum="3"
        maximum="6"/>
</h:inputText>

描述已添加 - omerhakanbilici

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接