为了账号安全,请及时绑定邮箱和手机立即绑定

为什么我的servlet跳转是白屏而且停在了servlet不动了

为什么我的servlet跳转是白屏而且停在了servlet不动了

天堂向左地狱向右 2017-05-17 01:05:11
package com.zhao.action; import java.io.IOException; import java.util.HashMap; import java.util.Map; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import com.zhao.Utils.StringUtils; public class UserAction extends BaseAction { public void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String username=request.getParameter("username"); String password=request.getParameter("password"); String checkcode=request.getParameter("checkcode"); String url=request.getParameter("url"); HttpSession session=request.getSession(); Map<String,String> errs=new HashMap<String, String>(); if(StringUtils.isBlank(username)) errs.put("username", "用户名称不能为空!"); if(StringUtils.isBlank(password)) errs.put("password", "密码不能为空!"); if(StringUtils.isBlank(checkcode)) errs.put("checkcode", "验证码不能为空!"); else{ Object obj=session.getAttribute("checkcode"); if(!checkcode.equals(obj)){ errs.put("checkcode", "验证码输入错误"); } } if(!errs.isEmpty()){ session.setAttribute("errors",errs); session.setAttribute("username", username); //request.getRequestDispatcher("../user/login.jsp").forward(request, response); response.sendRedirect(url); return; } } @Override public void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } } 其中login和List是我创建了一个servlet的父类BaseAction,用反射做出的。 父类: package com.zhao.action; import java.io.IOException; import java.io.PrintWriter; import java.lang.reflect.Method; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public abstract class BaseAction extends HttpServlet { private static final long serialVersionUID = -4289158719460028496L; public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doPost(request, response); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {         String action=request.getParameter("action");         if(action==null||action.trim().length()<1){          action="list";          Class clz=this.getClass();             try {              Method method=clz.getMethod(action, HttpServletRequest.class,HttpServletResponse.class);                 method.invoke(this,request,response); } catch (Exception e) {  new ServletException(e); }                      } } public abstract void list(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException; } 把jsp页面也贴出来 <FORM name=f1                    action="user.do?action=login" method=post>                   <input type="hidden" name="url" id="url"/>                   <script type="text/javascript">                   document.getElementById("url").value=location.href;                   </script>                   <TABLE cellSpacing=3 cellPadding=0 border=0>                     <TBODY>                     <tr>                     <td colspan="2">                     <span class="error">                        ${ sessionScope.errors.username}                     </span>                     </td>                     </tr>                     <TR>                       <TD>用户名:</TD>                       <TD><INPUT size=10 name="username" style="width:80px" value="${sessionScope.username}"></TD></TR>                        <tr>                     <td colspan="2">                     <span class="error">                        ${ sessionScope.errors.password}                     </span>                     </td>                     </tr>                     <TR>                       <TD>密码:</TD>                       <TD><INPUT type=password size=10 name="password" style="width:80px"></TD></TR>                      <tr>                     <td colspan="2">                     <span class="error">                        ${ sessionScope.errors.checkcode}                     </span>                     </td>                     </tr>                     <TR>                       <TD>验证码:</TD>                       <TD><INPUT size=10 name="checkcode" style="width:80px"></TD></TR>                     <TR>                       <TD align=middle colSpan=2>                       <IMG id="img1"/>                       </TD>                       <script>                                         document.getElementById("img1").src='${pageContext.request.contextPath}/images/pic.do?q='+Math.random();                                        </script>                       </TR>                     <TR></TR>                     <TR>                       <TD align=middle                          colSpan=2><INPUT type=submit value=登录>&nbsp;&nbsp;<INPUT onclick="javascript:window.location.href='userinfo.do?act=newregister'" type=button value=注册><BR></TD></TR>                     <TR>                       <TD class=ko align=middle colSpan=2>                         </TD></TR></TBODY></TABLE></FORM>                         <c:remove var="errors" scope="session"/>                         <c:remove var="username" scope="session"/>                         </TD>                          停止的页面地址是: 白屏没反应,求解决!!!!!!!!!!!!!
查看完整描述

1 回答

?
maybe丶xg

TA贡献12条经验 获得超2个赞


 if(!errs.isEmpty()){
            session.setAttribute("errors",errs);
            session.setAttribute("username", username);
            //request.getRequestDispatcher("../user/login.jsp").forward(request, response);
            response.sendRedirect(url);
            return;
        }

errs 不为空 会有response.sendRedirect(url);

为空的时候没有做处理

查看完整回答
反对 回复 2017-09-15
  • 1 回答
  • 1 关注
  • 2232 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号