String userName =(String)session.getAttribute("username");
if(userName==""||userName==null){
out.println("<script language='javascript'>alert('请您先登录!!!');</script>"); 
request.getRequestDispatcher("default.jsp").include(request,response);
我用这句话判断用户是不是已经登录过了!但有点小问题,我这样写,它还是先返回default.jsp这个页面,才弹出对话框,可以不可以先弹出对话框再返回default.jsp页面啊?

解决方案 »

  1.   

    可以用String userName =(String)session.getAttribute("username"); 
    if(userName=="" ¦ ¦userName==null){ 
    response.Write("<script language= 'javascript ' >alert( '请您先登录!!! '); </script >");
    response.redirect "default.jsp"
    你试一试吧!
      

  2.   

    这个东西为什么一定要在servlet里判断呢,如果把js的代码放在需要判断的jsp页面不就可以了吗,然后在js中用window.location="default.jsp"或者this.form1.action="default.jsp"不就可以了吗
      

  3.   

    可以写两个跳转页面,在servlet里面跳到第一个页面,用来弹出对话框,然后从这个页面再跳转到登陆页面。
      

  4.   

    String userName =(String)session.getAttribute("username"); 
    if(userName=="" ¦ ¦userName==null){ 
    out.println(" <script language= 'javascript ' >alert( '请您先登录!!! '); window.location='reLogon.jsp';</script >");  
    }reLogon.jsp的内容是
    request.getRequestDispatcher("default.jsp").include(request,response);