我想将facesmessage绑定到xhtml页面中的特定组件。 我的面孔消息看起来像这样:
ctx.addMessage("newAdmin:email", new FacesMessage(FacesMessage.SEVERITY_WARN, "No email!", "You should enter a email"));
这样clientId就是“newAdmin:email”。 我的xhtml页面如下所示:
<h:body>
<h:form class="text-left" id="newAdmin">
<h1 class="centerTxt">Televic Login</h1>
<h:messages class="error" globalOnly="true" />
<label>Email</label>
<h:inputText class="form-control" id="lg_username" value= "#{userController.email}"></h:inputText>
<h:message for="email"></h:message>
<h:commandButton class="btn btn-success" value="Login" action = "#{userController.login()}"></h:commandButton>
</h:form>
当我将clientId设置为“null”时,它会将消息绑定到全局消息标记,但绑定到特定消息标记将不起作用。 怎么了?我怎样才能找到合适的clientId?
答案 0 :(得分:0)
我在JSF文件中看不到任何带有电子邮件ID的组件。 for
组件的h:message
属性将消息附加到具有相应ID的组件。它似乎应该是:
<h:message for="lg_username"></h:message>
并在您的Java代码中:
ctx.addMessage("newAdmin:lg_username", new FacesMessage(FacesMessage.SEVERITY_WARN, "No email!", "You should enter a email"));