我使用了一些OminFaces(1.8.1)验证器,例如,
<o:validateAllOrNone components="a b c d" showMessageFor="someComponent"/>
如果至少有一个指定的字段留空,在这种情况下会显示如下所示的默认消息。
a,b,c,d:请填写所有字段
我想在资源包中覆盖此类错误消息,尤其是为了获取本地化消息。
与JSF不同,OmniFaces中没有找到资源包。这仍然可以以某种方式覆盖此错误消息吗?
答案 0 :(得分:3)
您可以使用message
属性。
<o:validateAllOrNone components="a b c d" showMessageFor="someComponent"
message="#{i18n['some.bundle.key']}" />
其中i18n
是资源包的<resource-bundle><var>
。
实际上,OmniFaces ValidateMultipleFields
组件不支持通过<message-bundle>
提供这些消息,而无需每次都声明message
属性。
巧合的是,3天前,我在即将发布的OmniFaces 2.0 committed several changes中使用了<message-bundle>
<o:validateAllOrNone>
,这些验证器可以在使用时通过<message-bundle>
覆盖默认消息组件类型为关键。因此,如果component type "org.omnifaces.component.validator.ValidateAllOrNone"
{{3}} {{3}},您应该能够在org.omnifaces.component.validator.ValidateAllOrNone = {0} all or none!
标识的资源包中覆盖它,如下所示:
{{1}}