gpt4 book ai didi

java - Struts2 表单字段验证不起作用

转载 作者:行者123 更新时间:2023-12-01 10:19:27 25 4
gpt4 key购买 nike

我正在尝试按照 here 的描述实现验证。 (struts2 文档)。我的类(class):

public class FatturaAction extends BaseAction {

private static final long serialVersionUID = 6586322371651933659L;
private FatturaForm fatturaForm;

//getter and setter
}

FatturaForm :

public class FatturaForm {

private Date data;

//getter and setter
}

我的 XML (FatturaAction-validaton.xml):

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0//EN"
"http://www.opensymphony.com/xwork/xwork-validator-1.0.dtd">
<validators>
<field name="fatturaForm.data">
<field-validator type="required">
<message>You cannot leave the email address field empty.</message>
</field-validator>
</field>
</validators>

即使字段为空,验证也不会被命中。我正在使用<interceptor-ref name="defaultStack" />因此验证拦截器被激活。

编辑:

我还尝试了 non field validator :

<validators>
<validator type="required">
<param name="fieldName">data</param>
<message>You must enter a value for bar.</message>
</validator>
</validators>

也没有击中。

最佳答案

您使用了错误的 DTD:

<!DOCTYPE validators PUBLIC "-//OpenSymphony Group//XWork Validator 1.0//EN" 
"http://www.opensymphony.com/xwork/xwork-validator-1.0.dtd">

最新版本 Struts 2 的正确版本是

<!DOCTYPE validators PUBLIC "-//Apache Struts//XWork Validator 1.0.3//EN"
"http://struts.apache.org/dtds/xwork-validator-1.0.3.dtd">

还要确保您的 FatturaAction-validaton.xml 位于 action 文件夹中,而不是位于 bean 文件夹中(这只适用于 访客验证)

关于java - Struts2 表单字段验证不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35706458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com