Struts2-使用xml文件验证失败会导致操作类参数从生成的jsp中消失
我有一个甲级:Struts2-使用xml文件验证失败会导致操作类参数从生成的jsp中消失,struts2,struts,Struts2,Struts,我有一个甲级: class A extends ActionSupport{ int someId; // getters/setters public String execute(){ setSomeId(2); return SUCCESS; } public String save(){ // something } } 在struts.xml中,我配置了一个操作“ViewId,它将我们带到默认方法execute,其中设置了some
class A extends ActionSupport{
int someId;
// getters/setters
public String execute(){
setSomeId(2);
return SUCCESS;
}
public String save(){
// something
}
}
在struts.xml
中,我配置了一个操作“ViewId
,它将我们带到默认方法execute
,其中设置了someId
。然后,我们被带到一个jsp页面show.jsp
,在那里我可以访问someId
值。在show.jsp中,我必须输入电子邮件id,然后提交页面。现在在“Save
”中调用的操作,将我们带到action类的Save方法。但是,我在相应的validation.xml文件A-Save-validation.xml
中进行了一些检查,这将检查输入的电子邮件的格式。问题是,如果xml验证失败,我们将返回show.jsp,但viewId参数现在不可用。为什么会这样
输入页面应与之前的用户相似。只有现在已验证的字段才应具有与其关联的错误页。任何解决方法?如@Umesh所说,在调用动作的方法之前,在相应的interecptor上进行验证 当验证失败时,将永远不会调用该操作的方法,并且您将被带到输入结果 为了实现您的目标,您有一些选择:
1可能是最简单的。我也喜欢选项3。这是因为您的实际方法永远不会被调用,因为验证失败,简单的方法是使用prepare方法,因为它将在工作流拦截器返回验证错误之前被调用。非常感谢您提供的信息。请将此作为答复,以便我能接受。