我是 struct 2.0 的新手。我正在尝试使用拦截器运行我的第一个小型应用程序,并希望仅对执行方法使用验证。
但它在填充和执行方法之前调用验证函数。谁能告诉我我错过了什么。
以下是我的 SampleAction 类。
package demo;
import com.opensymphony.xwork2.ActionSupport;
public class SampleAction extends ActionSupport {
private static final long serialVersionUID = 1L;
public void validate()
{
System.out.println("validate() method called");
}
public String populate()
{
System.out.println("populate() method called");
return "populate";
}
public String execute()
{
System.out.println("execute() method called");
return SUCCESS;
}
}
以下是我的 struct.xml 文件
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
"http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<package name="default" extends="struts-default">
<action name="*Sample" method="{1}" class="demo.SampleAction">
<interceptor-ref name="defaultStack" >
<param name="validation.excludeMethods"> populate</param>
<result name="populate">/first.jsp</result>
<result name="success">/success.jsp</result>
</action>
</package>
</struts>