为什么form表单提交的数据 后台只接收到了一个下面是代码HTML codeh1用户登陆/h1hrform actionlo
为什么form表单提交的数据 后台只接收到了一个
下面是代码
HTML code <h1>用户登陆</h1> <hr> <form action="load.do" method="post"> 用户名: <input type="text" name="userName"><br/> 密 码:<input type="text" name="userPwd"><br/> <input type="submit" value="登陆"> <input type="reset" value="重填"> </form>
Action
Java code public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) { // TODO Auto-generated method stub System.out.println("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"); LoadActionForm lf = (LoadActionForm) form; System.out .println("aaa =" + lf.getUserName() + " , " + lf.getUserPwd()); if (lf != null) { User user = new User(); user.setUserName(lf.getUserName()); user.setUserPwd(lf.getUserPwd()); User user1 = this.userBiz.checkLoad(user); if (user1 != null) { request.setAttribute("userName", user.getUserName()); mapping.findForward("succ"); } } return mapping.findForward("fail"); }
为什么只取到了名字 密码没有??
[解决办法]struts 1 吗?
LoadActionForm 在哪了?
[解决办法]一看就 是Struts1.可能是ActionForm 和Action没有绑定好吧
[解决办法]Struts.xml:
<form-beans>
<form-bean
name="SystemConfigForm"
type="com.sunland.form.SystemConfigForm"
/>
</form-beans>
[解决办法]一般来说,既然能够取到一个值了,那就说明程序是通了,另一个值取不到,可能是字符写错了等原因。你再添加一个字段测试一下。看能不能取到。如果还是不行。可能是人品了。
[解决办法]哎,都忘记光了,出了bug,首先在脑子里分析,再动手。。。
[解决办法][解决办法]你在后台使用request.getParamter("")直接得到一下看可以得到不。。如果可以得到 那就是你对应的FORM写的有问题。
[解决办法]咦, 看了一下感觉没什么问题么!
[解决办法] 你actionform里的password属性名要和jsp页面input框的password的name要一致 不然找不到!
[解决办法]if (lf != null) {
User user = new User();
user.setUserName(lf.getUserName());
user.setUserPwd(lf.getUserPwd());
User user1 = this.userBiz.checkLoad(user);
if (user1 != null) {
request.setAttribute("userName", user.getUserName()); mapping.findForward("succ");
}
}
request.setAttribute("userName", user.getUserName());
改正为request.setAttribute("user", user);
将整个user对象全部存进去,即可接受到姓名和密码了