+ -
当前位置:首页 → 问答吧 → 求助!!!!!!!!!

求助!!!!!!!!!

时间:2011-10-29

来源:互联网

1.jsp页面通过表单提交数据给servlet处理。<body>
<form action="${pageContext.request.contextPath}/servlet/RegisterServlet" method="post">
<table align="center" width="60%">
<tr>
<td align="right">用户名</td>
<td>
<input type="text" name="username" value="${form.username}">
<span class="message">${form.error.username}</span>
</td>

</tr>

<tr>
  <td align="right">密码</td>

<input type="password" name="password"value="${form.password}">
</tr>
 
</table>
<input type ="reset" name="reset" value="重置">
<input type= "submit" name="submit" value="注册">
</form>
 
  </body>

2.点击注册后forward到RegisterServlet验证表单字段合法性,不管怎么样也应该在eclipse中打印一串*号,可是没一点反应,这说明RegisterServlet什么都没做。然后我直接在浏览器中输入
http://localhost:8080/web_develop/servlet/RegisterServlet却能打印一串*。这到底是怎么回事????public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
request.setCharacterEncoding("UTF-8");
System.out.println("****************************");

//1.校验表单字段的合法性(表单数据封装到formbean)
RegisterForm form = WebUtils.request2Bean(request,RegisterForm.class);
boolean b = form.validate();
System.out.println(form.getUsername());
//2.如果失败,跳回表单页面,回写校验失败信息
if(!b){
request.setAttribute("form", form);
request.getRequestDispatcher("/WEB-INF/jsp/register.jsp").forward(request, response);
return;
}

}

作者: w339816801   发布时间: 2011-10-29

你的form是Post方法,但是 你servlet里确是doGet()方法 应该是执行doPost方法吧

作者: lynnlovemin   发布时间: 2011-10-31

引用 1 楼 lynnlovemin 的回复:
你的form是Post方法,但是 你servlet里确是doGet()方法 应该是执行doPost方法吧

+1


你在doPost方法中有没有调用doGet方法?
如果没有就加一个就OK了

作者: tangchang_soft   发布时间: 2011-10-31

引用楼主 w339816801 的回复:
1.jsp页面通过表单提交数据给servlet处理。<body>
<form action="${pageContext.request.contextPath}/servlet/RegisterServlet" method="post">
<table align="center" width="60%">
<tr>
<td align="right">用户名</td>
<td>
……


一楼正解

作者: songer0009   发布时间: 2011-10-31

设置的是Post方法
调用的是doGet
在doGet中调用doPost()即可

作者: JieTouLangRen   发布时间: 2011-10-31