java - 如何在 s :decorate? 中显示适当的消息(信息或警告)

标签 java jsf seam richfaces

我实际上正在检查登录名的可用性,并希望显示信息图像或带有适当消息的警告图像。目前我们收到 2 条关于登录名不可用的错误消息。

            <s:decorate id="loginIdField" template="/layout/edit.xhtml">
                <ui:define name="label">Desired Login Name</ui:define>
                <a:region>
                    <h:inputText id="loginId" required="true" value="#{userHome.instance.loginId}"/>
                    <s:message warnStyle="color: red" infoStyle="color: green"/>
                    <div class="actionButtons">
                        <a:commandButton id="submit" value="Check Availability"
                            action="#{userHome.isUnique(userHome.instance.loginId)}" reRender="loginIdField"/>
                    </div>
                </a:region>
            </s:decorate>

在 bean 中添加适当消息的代码。

    if (!unique) {
        statusMessages
                .addToControlFromResourceBundle(
                        "loginId",
                        WARN,
                        "LoginIdNotUnique",
                        new Object[] { inputLoginId });
    } else {
        statusMessages.addToControlFromResourceBundle("loginId", INFO,
                "LoginIdUnique",
                new Object[] { inputLoginId });
    }

编辑.xhtml

<ui:composition  xmlns="http://www.w3.org/1999/xhtml"
                 xmlns:ui="http://java.sun.com/jsf/facelets"
                 xmlns:h="http://java.sun.com/jsf/html"
                 xmlns:f="http://java.sun.com/jsf/core"
                 xmlns:rich="http://richfaces.org/rich"
                 xmlns:s="http://jboss.com/products/seam/taglib">

    <div class="prop">

        <s:label styleClass="name #{invalid?'errors':''}">
            <ui:insert name="label"/>
            <s:span styleClass="required" rendered="#{required}">*</s:span>
        </s:label>
        <div style="clear: both"/>

        <span class="value #{invalid?'errors':''}">
            <s:validateAll>
                <ui:insert/>
            </s:validateAll>
        </span>

        <span class="error">
            <h:graphicImage value="/img/error.gif" rendered="#{invalid}" styleClass="errors"/>
            <s:message styleClass="errors"/>
        </span>

    </div>

</ui:composition>

最佳答案

也许是模板?你试过没有模板吗?

关于java - 如何在 s :decorate? 中显示适当的消息(信息或警告),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2182590/

相关文章:

java - 如何在 NetBeans IDE 中重命名我的主类?

mysql - java.lang.IllegalStateException : Attempting to execute an operation on a closed EntityManagerFactory 错误

java - 将多种形式的零件转换为文件

java - JSF/SEAM : How to pre-select checkboxes in a form

java - Seam:将文件内容流式传输到页面区域

java - Spring 启动 2x。休息 API。将失败的字符串转换为日期

java - Short[] 到 byte[] 给出的原始数据是乱序的

java - 如何使用 Hive 从 hortonworks 中的 jdbc 程序创建表?

java - 检测 html 文件时 HttpServletResponse 内容类型为 null

java - 在 Hibernate 3 上禁用透明持久化