p:消息更改消息文本

mon*_*nty 5 jsf primefaces

我创建了一个映射到MyBean.beansField的表单.我使用了javax.validation.NotNull anotation来确保它必须输入.到目前为止一切正常但错误消息如下所示:

beansField:不能为null.

无论我到目前为止尝试了什么,我都无法删除消息前面的"beansField:".

任何人都可以告诉我这个前缀来自哪里以及如何摆脱它?

Mat*_*ndy 7

如果要检查用户是否输入了数据,您也可以required将输入字段的属性与字段结合使用requiredMessage,例如对于inputField:

<h:inputText value="#{myBean.beansField}" required="true" requiredMessage="Can not be null"/>
Run Code Online (Sandbox Code Playgroud)

如果要覆盖通常的消息,则必须编辑或覆盖messages.properties文件:

  1. 将其添加到application元素内的faces-config.xml:
<locale-config><default-locale>en</default-locale></locale-config>
     <message-bundle>/resources/messages</message-bundle>
Run Code Online (Sandbox Code Playgroud)
  1. 将名为messages_en.properties的文件放在资源文件夹中
  2. 以这种方式添加要覆盖的邮件:

    javax.faces.component.UIInput.REQUIRED =字段"{0}"不能为空.

  • 我用requiredMessage ="#{msg.validation_notNull}"解决了这个问题.javax.faces.component ....仍然不起作用(但我仍然可以用第一个提示解决它).非常感谢你. (2认同)