如何根据JSF中的某些条件来验证inputText字段?

时间:2019-04-04 07:42:37

标签: java jsf jstl

我必须对JSF中的inputText字段进行验证。 在dataTable中显示了具有不同名称的标签,我只想验证具有一个指定标签名称的字段。 验证parameter.label的名称是否为Stirng文本“ ”。

另一个问题是字符“ <”和“>”,我应该将其替换为XML预定义的实体,例如&lt和&gt。 代码如下:

('{' || json || '}')::json->'writing'->1->>'variableName'

我做了这个,但是没用:

<p:outputLabel value="Missing error attributes" rendered="#{addError2018Controller.addErrorContext.isAttributesMissing}"/>
        <h:dataTable value="#{addError2018Controller.addErrorContext.errorsParameters}" var="parameter" rendered="#{addError2018Controller.addErrorContext.isAttributesMissing}">
           <h:column>
                <p:outputLabel value="#{parameter.label}"/>
            </h:column>
            <h:column>
                <p:inputText value="#{parameter.value}" style="width: 100%;">
                    <p:ajax event="change" update=":addError:contents :addError:addErrorButtons :addError:error" listener="#{addError2018Controller.completeMessage}"/>
                </p:inputText>
            </h:column>
        </h:dataTable>

最有问题的是此行:

        <p:outputLabel value="Missing error attributes" rendered="#{addError2018Controller.addErrorContext.isAttributesMissing}"/>
        <h:dataTable value="#{addError2018Controller.addErrorContext.errorsParameters}" var="parameter" rendered="#{addError2018Controller.addErrorContext.isAttributesMissing}">
           <h:column>
                <p:outputLabel value="#{parameter.label}"/>
            </h:column>
            <h:column>
                <p:inputText value="#{parameter.value}" style="width: 100%;">

			            <c:if test="${parameter.label == '&lt;year of case&gt;'}" >
                        <pe:keyFilter regEx="/[\d\-]/" preventPaste="false"/>
                        <f:validateRegex pattern="\d{4}"/>
                        <f:validateLongRange minimum="2015"/>
                   </c:if>
                    
                  <p:ajax event="change" update=":addError:contents :addError:addErrorButtons :addError:error" listener="#{addError2018Controller.completeMessage}"/>
                </p:inputText>
            </h:column>
        </h:dataTable>

我也在此行中尝试其他选项,但仍然无法正常工作。

0 个答案:

没有答案