为什么form表单提交的数据 后台只接收到了一个
下面是代码
HTML code
用户登陆
用户名:
密 码:
Action
Java codepublic 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:
name="SystemConfigForm"
type="com.sunland.form.SystemConfigForm"
/>
------解决方案--------------------
一般来说,既然能够取到一个值了,那就说明程序是通了,另一个值取不到,可能是字符写错了等原因。你再添加一个字段测试一下。看能不能取到。如果还是不行。可能是人品了。
------解决方案--------------------
哎,都忘记光了,出了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对象全部存进去,即可接受到姓名和密码了