繁体   English   中英

验证jsf 1.x中的多个字段

[英]validation of multiple fields in jsf 1.x

我需要验证表单中的多个字段,单个字段验证工作正常。 我想知道是否所有字段都为空,而jsf 1.x和richfaces 3.3是否可以显示一条消息,如“所有字段都是必填项”,而不是每条验证消息

您可以有一个包含所有错误消息的列表,并且在提交时填充该列表。

例:

    public String doBid() {
     boolean flag=false;
    errorMessages = new ArrayList<String>();
    if (getUserID().equals("")) {
   flag=true;
    }
    if (getKeyword().equals("")) {
     flag=true;
    }
    if (getNumericBidAmount() == 0.00) {
    flag=true;
    }
    if (getNumericBidDuration() =0) {
     flag=true;

    }
     if (flag==true)
         errorMessages.add("all fields are mandatory");
    if (errorMessages.size() > 0) {
    return(null);
    } else {
    return("success");
    }
    14 }


    ---------

    public String getErrorMessages() {
    String messageList;
    if ((errorMessages == null) ||
    (errorMessages.size() == 0)) {
    messageList = "";
    } else {
    messageList = "<FONT COLOR=RED><B><UL>\n";
    for(String message: errorMessages) {
    messageList = messageList + "<LI>" + message + "\n";
    }
    messageList = messageList + "</UL></B></FONT>\n";
    }
    return(messageList);
    }

    --------------------
    <h:form>
    <h:outputText value="#{bidBean1.errorMessages}"
    escape="false"/>
    <TABLE>
    <TR>
    <TD>User ID:
    <h:inputText value="#{bidBean1.userID}"/></TD></TR>
    <TR>
    <TD>Keyword:
    <h:inputText value="#{bidBean1.keyword}"/></TD></TR>
    <TR>
    <TD>Bid Amount:
    $<h:inputText value="#{bidBean1.bidAmount}"/></TD></TR>
    <TR>
    <TD>Duration:
    <h:inputText value="#{bidBean1.bidDuration}"/></TD></TR>
    <TR><TH>
    <h:commandButton value="Send Bid!"
    action="#{bidBean1.doBid}"/></TH></TR>
    </TABLE>
    </h:form>

我正在使用MyFaces Extensions Validator +一个带有ProcessedInformationRecorder的简单插件来完成您在说的事情。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM