为什么requiredMessage不能使用lang.properties(国际化)jsf?

时间:2015-12-25 02:16:12

标签: jsp jsf

我正在使用JSP作为视图技术的JSF。我想在下面的程序中使用国际化。

这是 test.jsp

<head>
<f:loadBundle basename="com.infy.resource.Lang" var="label" />
</head>
<body>
    <f:view>
        <h:form>
            <h:outputText value="#{label.Enter_User_Id}" /><br>
            <h:inputText value="#{testBean.userId}" required="true" requiredMessage="#{label.Enter_User_Id}"/><br>
            <h:commandButton value="#{label.Login}" action="/test.jsp"/>

        </h:form>
        <h:messages style="color:red;"></h:messages>
    </f:view>
 </body>

这是我的 Lang.properties 文件:

Enter_User_Id=Enter User Id
Login=Login

但是jsf无法从 Lang.properties 文件中读取requiredMessage。 虽然它能够读取<h:outputText>的标签。

有人能说明为什么它不起作用吗?

是否因为JSF生命周期?  所需的验证在阶段3 - 过程验证中完成,并且在阶段4 - 更新模型阶段中从属性文件中读取值。如果验证失败,则跳过阶段4和5,直接到达阶段6 - 渲染响应阶段以显示错误按摩。

如果我错了,请帮我纠正,并提出一种从Lang.properties文件中读取requiredMessage的方法吗?

0 个答案:

没有答案