Validation 如何自定义JSF验证错误消息
如何自定义验证失败时显示的验证消息 以下是我的代码:Validation 如何自定义JSF验证错误消息,validation,jsf,message,facelets,Validation,Jsf,Message,Facelets,如何自定义验证失败时显示的验证消息 以下是我的代码: <h:form> <p><h:inputText id="userNo" title="Type a number from 0 to 10:"> <f:validateLongRange minimum="3" maximum="6"/> </h:inputText
<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>
这不是特别方便用户 最简单的方法是在
标记中设置validatorMessage=“my custom message”
属性
要了解更高级的方法,请阅读本文
除了Daniel的答案之外,您还可以始终使用输入组件的
标签
属性从错误消息中删除客户端id(j_idt10:userNo:
)
<h:input text required ="true" validatorMessage="Enter user friendly message">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
例如,与
<h:inputText id="userNo" title="Type a number from 0 to 10:"
label="User number">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
将产生:
用户编号:验证错误:指定的属性不在
预期值为3和6
标签属性也可以是el表达式,用于动态更改错误消息的这一部分。您可以使用输入文本的validatorMessage属性。对所需消息使用requiredMessage属性,它不同于验证程序消息
<h:input text required ="true" validatorMessage="Enter user friendly message">
<f:validateLongRange
minimum="3"
maximum="6"/>
</h:inputText>
我感到惊讶的是,没有办法在属性或其他内容中设置消息“正在运行”。嗯……这肯定更有道理。但是,如果我有多个验证器连接到输入,并且我想定制每个验证器的消息,那该怎么办呢?然后您需要覆盖每个验证器的默认消息(在messages.properties文件中),就像我在postedDescription中添加的文章一样