你是不是
action1 {
form.reset();
forward(action2);
}整个流程是这个样子的form.reset();
form.setXxx(from HTTP request, request.getParameter())
action1.execute();form.reset();
form.setXxx(from HTTP request, request.getParameter())
action2.execute();
action1 {
form.reset();
forward(action2);
}整个流程是这个样子的form.reset();
form.setXxx(from HTTP request, request.getParameter())
action1.execute();form.reset();
form.setXxx(from HTTP request, request.getParameter())
action2.execute();
要保存到request内?
贴一下代码吧public class AddPersonInfoAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
PersonInfoForm personInfoForm = (PersonInfoForm) form;
/*
处理过程...
*/
//actionform 全部清空 reset方法已经重写
personInfoForm.reset(mapping, request);
return mapping.findForward(back);
}
}我调转的action
public class PersonInfoAction extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response) throws Exception {
// 这里的获得actionform有值
PersonInfoForm personInfoForm = (PersonInfoForm)form;
return mapping.findForward("");
}
}
两个action是使用同一个actionform类型,
那么我认为在PersonInfoAction 中的actionform对象
是通过AddPersonInfoAction forward过来的
但调试结果好像不是这样,
请问AddPersonInfoAction的actionform是从哪里获得的,难道不是request吗
在下一个action的form的还是会在controller中赋进去,虽说是一个对象。
我的scope 是request,是不是在request的范围内,controller都会保存着jsp提交过来的值,
而且在每次访问controller时,controller都会执行actionform的reset,
并把表单值赋给acitonform,若连续跳转三个aciton,每次actionform在controller中都被重新写入的表单的值,是这样吗?
那这样的话,我的东西不是无法实现了?
如果你想弄懂为什么会自动填充页面,那还得等高手指教,我也不太懂
感谢shine333(enihs) ,aChinese(一个中国人)
感谢各位
我把forward的redirect设为true,就好了,使request失效
看来redirect默认的是false