public String execute() throws Exception {
return "hello";
}
//log方法,Action调用的method方法
public String log()throws Exception{
System.out.println("log");
return "hello";
}
//校验方法
public void validate() {
System.out.println("validate");
}
//log method的校验方法
public void validateLog(){
System.out.println("validatelog");
//age值必须在10-30之间
if(age<10||age>30)
{
addFieldError("age", "age must be from 10 to 30!");
}
}
struts.xml
<package name="default" namespace="/" extends="struts-default">
<action name="login" class="com.action.LoginAction">
<!-- 返回hello.jsp -->
<result name="hello">/hello.jsp</result>
<!-- 校验出现问题,返回validationLogin.jsp -->
<result name="input">/validateLogin.jsp</result>
</action>
</package>
我的问题是action标签里面没有写method属性,为什么会执行log()方法呢?
我以为就直接执行execute()方法就完了
log里面下断点,调试,在调用堆栈窗口里看,谁调用了它,是不是有拦截器