Я должен сделать проверку в поле inputText в JSF.В dataTable отображаются метки с разными именами, и я хочу только проверить поле с одним указанным именем метки.Подтвердите, если имя параметра.label имеет текст Stirng "".
Дополнительная проблема связана с символами '<' и '>', которые я должен заменить предопределенными объектами XML, такими как <и>. Код выглядит так:
<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 == '<year of case>'}" >
<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>
Наиболее проблемной является эта строка:
<c:if test="${parameter.label == '<year of case>'}" >
Я пробовал и другие варианты в этой строке, но он все еще не работает.