(1)在 MyFaces 的实现里面,
如果 input field 不填写任何数据 或填写数据长度为 0,不会触发任何 validator。
所以,如果想写一个 required 的 validator 是不行的。
(2)由于上面说的原因,required 的验证只能通过 required 属性验证。
例:
xml 代码
- <h:inputText required="true" >
<h:inputtext required="true"></h:inputtext>
(3)至于 message bundle 的问题
在 faces-config.xml 中的配置:
xml 代码
- <application>
- <message-bundle>demo.bundles.Messagesmessage-bundle>
- <locale-config>
- <default-locale>en_USdefault-locale>
- <supported-locale>zh_CNsupported-locale>
- <supported-locale>zh_TWsupported-locale>
- locale-config>
- application>
MyFaces 组件进行验证时,会在上面标明的 bundle 文件内获取 message
因此,把 MyFaces 需要的 message key 写进这个 bundle 文件即可
另外,如果 MyFaces 在上面的 bundle 文件没取到所需 message,就会在 javax.faces.Message 中取