如何在JSF中为标准验证器设置自定义消息?

13

我创建了一个简单的输入框来存储整数变量。我希望在其上添加验证,但是我认为没有必要自己创建验证器,因为我只需要避免负数和非数字字符。

这就是我所做的:

<h:inputText id="price" value="#{placeAddControler.price}">
            <f:validateLongRange minimum="0"/>
</h:inputText>          
<h:outputText value="€" />
<br/>
<span style="color: red;"><b><h:message for="price"
showDetail="true" /></b></span>
当我尝试输入负数时,结果如下图所示: 图片描述 而当我输入字符时,结果如下图所示: 图片描述 在我的项目中,我该如何自定义这些验证消息的文本?
2个回答

27

要更改这些值,您基本上需要定义自己的资源文件,覆盖您想要自定义消息的属性,并在web.xml中注册它。 这个链接 看起来解释得很好,因此我包含了它而不是尝试重写内容。

对于一个更简单的解决方案,作为JSF 2,您还可以使用inputText组件的以下属性:

requiredMessage="I am a custom message"
converterMessage="I am a custom message"
validatorMessage="I am a custom message"

这将覆盖验证器本身输出的任何消息。

但我更喜欢资源束,因为它有助于在应用程序中实现用户可见错误消息的一致性。


2

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