JSF 1.2/Seam 2.2-当输入为空时跳过验证程序
我试图在JSF(seam的xhtml文件)中调用validateLengthJSF 1.2/Seam 2.2-当输入为空时跳过验证程序,jsf,jboss,seam,jsf-1.2,Jsf,Jboss,Seam,Jsf 1.2,我试图在JSF(seam的xhtml文件)中调用validateLength 它适用于文本长度513和1等值(即,它显示警告,但不适用于0) 正在使用它的输入文本字段设置为required=false(这样它就可以对空字段使用4j支持,我必须根据输入显示预览) 我看到的问题是,助手类中有一个验证器方法,但当输入长度为0时,它会被忽略(即我不放任何内容,它对非空值有效) 我这里还有一个NullableStringConverter,但我注意到,只要该转换器设置空字符串的null值,验证程序就会
它适用于文本长度513和1等值(即,它显示警告,但不适用于0)
正在使用它的输入文本字段设置为required=false(这样它就可以对空字段使用4j支持,我必须根据输入显示预览)
我看到的问题是,助手类中有一个验证器方法,但当输入长度为0时,它会被忽略(即我不放任何内容,它对非空值有效)
我这里还有一个NullableStringConverter,但我注意到,只要该转换器设置空字符串的null值,验证程序就会被跳过。以下是inputText中的完整片段
<h:inputText id="linkNameInput"
value="#{someHelper.name}"
validator="#{someHelper.validateMethod}"
required="false">
<f:validateLength minimum="2" maximum="512"/>
<f:converter converterId="NullableStringConverter" />
</h:inputText>
我只希望能够在验证器中验证空字符串
我只希望能够在验证器中验证空字符串
这在JSF1.x中是不可能的。这只有在JSF2.0(支持JSR303bean验证支持)之后才可能实现
我不确定为什么要在自定义验证器中验证空字符串。在这里,您通常使用required=“true”
属性进行此操作。如果唯一的目标是更改所需的消息,那么只需使用requiredMessage
属性即可
<h:inputText ... required="true" requiredMessage="Please enter name" />
我只希望能够在验证器中验证空字符串
这在JSF1.x中是不可能的。这只有在JSF2.0(支持JSR303bean验证支持)之后才可能实现
我不确定为什么要在自定义验证器中验证空字符串。在这里,您通常使用required=“true”
属性进行此操作。如果唯一的目标是更改所需的消息,那么只需使用requiredMessage
属性即可
<h:inputText ... required="true" requiredMessage="Please enter name" />
如前所述,不支持验证JSF 1.2组件中的空输入字符串。但是,您可以在表单提交时在支持bean中检查此空/空模型值,并添加映射到该特定输入字段的FacesMessage。这将允许与特定于服务器端组件的错误消息显示(
)集成
如前所述,不支持验证JSF1.2组件中的空输入字符串。但是,您可以在表单提交时在支持bean中检查此空/空模型值,并添加映射到该特定输入字段的FacesMessage。这将允许与特定于服务器端组件的错误消息显示(
)集成
? ?
FacesContext.getCurrentInstance().addMessage("componentId",
facesMessageForComponent);