我使用struts开发一个注册功能,如果密码输入不正确,mapping.forward转到注册页面后,希望username还是原来的值,不是空的 我现在的是转回去后,username表单为空的,怎么实现??感谢 <forward name="register" path="/register.jsp" /> 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <forward name="register" path="/register.jsp?username="+username />后面带个参数,把它传回去就可以了 在对应的BeanForm中有一个默认的reset方法,把这个方法中不需要清空的值..进行设定..还有可以把缓存不清空 感谢楼上,我不想那样做,,如果有100个表单呢,还得传100个值,STRUTS内部有没有一种机制,感谢 struts-config.xml中<action ... input="register.jsp">action中return mapping.getInputForward(); 你可以在出错后转发的时候,再把那值set进formbean中啊 如果是在actionform.validate()中验证的话,没通过自动会回到input的页面上的 那你就写一个对象啊,放你的那些属性,到时候request.setAttribute("",bean);这样就可以都传过去了啊 TO dreamover(梦醒了):我在action中写了这样,但还是不行 if (!rand.equals(SessionRand)) { session.setAttribute("registerMessage", "验证码错误,请重新输入!~"); registerForm.setUsername(username); registerForm.setPassword(password); registerForm.setRepassword(repassword); registerForm.setSex(sex); registerForm.setEmail(email); registerForm.setSite(site); registerForm.setQq(qq); registerForm.setMsn(msn); registerForm.setPersonal(personal); registerForm.setHeadimage(headimage); // return mapping.findForward("register"); return mapping.getInputForward(); } else { System.out.println("验证码正确"); }怎么回事 struts-config中添加validate和input属性,如下:<action name="registerForm" path="/register.do" type="pkg.RegisterAction" scope="request" validate="true" input="register.jsp">RegisterForm中public class RegisterForm{ private String username; //... // getter and setter public ActionErrors validate(ActionMapping mapping,HttpServletRequest request) { ActionErrors errors= new ActionErrors(); if(username==null||"".equals(username)){ errors.add("username",new ActionError("formerr.requied","username")); } return errors; }}资源文件中message.properties加入formerr.requied=the field {0} is required.jsp中<html:errors/><html:form>...</html:form> action-mapping中配置action时scope=session java的一个输入输出流问题 J2SE / 基础类, 问题。 Swing JPanel JSplitPane JFrame 显示问题 java类的初始化问题!??求教 能不能让JAVA程序在IE中模拟鼠标的一些动作? java中控制时间间隔的问题 JAVA简单的输入输出问题 编了一个java浏览器程序,运行时 点NEXT按钮 出现IeEmbed.exe 内存不能为read错误 为什么呢?? 关于java虚拟机问题 请教关于如何用JAVA编写基于浏览器执行的软件..... 寻求JAVA高等数学公式算法 如何在数据库中存储图象?(告急!!!)
<forward
name="register"
path="/register.jsp?username="+username />
后面带个参数,把它传回去就可以了
把这个方法中不需要清空的值..进行设定..
还有可以把缓存不清空
<action ... input="register.jsp">action中
return mapping.getInputForward();
我在action中写了这样,但还是不行
if (!rand.equals(SessionRand)) {
session.setAttribute("registerMessage", "验证码错误,请重新输入!~");
registerForm.setUsername(username);
registerForm.setPassword(password);
registerForm.setRepassword(repassword);
registerForm.setSex(sex);
registerForm.setEmail(email);
registerForm.setSite(site);
registerForm.setQq(qq);
registerForm.setMsn(msn);
registerForm.setPersonal(personal);
registerForm.setHeadimage(headimage);
// return mapping.findForward("register");
return mapping.getInputForward();
} else {
System.out.println("验证码正确");
}
怎么回事
private String username;
//...
// getter and setter public ActionErrors validate(ActionMapping mapping,HttpServletRequest request) {
ActionErrors errors= new ActionErrors();
if(username==null||"".equals(username)){
errors.add("username",new ActionError("formerr.requied","username"));
}
return errors;
}}
资源文件中message.properties加入
formerr.requied=the field {0} is required.jsp中
<html:errors/>
<html:form>
...
</html:form>