luqinghui 2008-12-31 16:03
浏览 425
已采纳

请教:Filter 中进行sendRedirect页面跳转 URL方式传递参数 怎么取不到啊! 似

  

    
    public void doFilter(ServletRequest request, ServletResponse response,
                    FilterChain filterChain) throws IOException,
                    ServletException
    {
        HttpServletRequest httpRequest = (HttpServletRequest)request;
        HttpServletResponse httpResponse = (HttpServletResponse)response;
        String uri = httpRequest.getRequestURI();      
        HttpSession session = ((HttpServletRequest)httpRequest).getSession();
        EmployeeData user = (EmployeeData)session.getAttribute("user");
        
        if(user == null)
        {
            session.setAttribute("key") = "value";
            ((HttpServletResponse)response).sendRedirect("/login.jsp?key=value");
        }
                          
        filterChain.doFilter(request, response);
    }

login.jsp :

 

 <%    
    String Parametermessger = (String)request.getParameter("key");
    System.out.println("Parameter: "+Parametermessger);
    
    String Sessionmessger = (String)request.getSession().getAttribute("key");
    System.out.println("Session: "+Sessionmessger);     
 %>

   结果:

           NULL

           NULL

   

   ????????????????????????????????何解

 

 

 


问题补充:
这个地方笔误

session.setAttribute("key") = "value"; 

纠正为

session.setAttribute("key","value"); 




问题补充:
这个问题也许我没能描述的很明白,很抱歉!应用是这样的:

登陆Frame框架请求多个页面,导致doFilter过程执行多次,也就是执行了多次的sendRedirect("/login.jsp?key=value")过程,从login.jsp中打印信息来看,URL的参数前几次打印出参数是value,对的,但在最后一次变成了NULL,为什么??? 地址显示为:.../login.jsp,为什么啊???? 是否与Filter有关???



sendRedirect是重定向,作用域已经发生了改变,

re:但URL参数应该是在的吧???



RequestDispatcher rd = request.getRequestDispatcher();

re:这个我当时试过,并不能将页面从系统框架页面返回到login.jsp页面,不能满足业务需求







  • 写回答

6条回答 默认 最新

  • 不良校长 2008-12-31 18:20
    关注
    1. sendRedirect belong to http status 301/302.
    2. 301/302 已经跃出了 request scope.
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(5条)

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 MATLAB动图问题
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名