tcwjok
tcwjok
2010-04-13 21:47

关于Servlet之间request对象的传递问题

已采纳

现有a.jsp通过表单提交一个字符串给Servlet1,Servlet1进行处理后得到一个对象Object o,然后
request.setAttribute("object",o);
RequestDispatcher dispatcher=request.getRequestDispatcher("b.jsp");
dispatcher.forward(request,response);

我在b.jsp可以获取到对象o,
现在问题是我在b.jsp上使用超链接 链到Servlet2,但我在Servlet2上有语句:
Object oo=(Object)request.getAttribute("object");
但获取到的oo却等于null

请问如果我想能在Servlet2上获取到对象o 有什么办法?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

4条回答

  • xiaolongfeixiang 拽拽的初行者 11年前

    [quote]现在问题是我在b.jsp上使用超链接 链到Servlet2,但我在Servlet2上有语句:
    [b]Object oo=(Object)request.getAttribute("object"); [/quote]

    超链接中的参数,是用request.getParameter()取得的,不是用 request.getAttribute取得的。[/b]

    点赞 评论 复制链接分享
  • iteye_12008 iteye_12008 11年前

    超链接中的参数,是用request.getParameter()取得的,不是用 request.getAttribute取得的。
    xiaolongfeixiang (资深程序员) 2010-04-14

    楼上说的对,获取地址栏的参数不是通过getAttribute("object"); 来获取,该参数是用来获取session中的值,要获取的地址栏的参数,要用到request.getParameter("object");

    点赞 评论 复制链接分享
  • antiwise OPPPPOP 11年前

    你要明白 setAttribute只能在服务端容器里进行 JSP页面翻译成HTML时已经到客户端了 一个request请求至此也已经挂掉了 所以你只能在此页面getAttribute 客户端向服务器发送数据只能post或get 通俗的说只能发送字符串 要下个页面也能用 同一楼

    点赞 评论 复制链接分享
  • mginobili mginobili 11年前

    request.setAttribute("object",o);
    -->
    session.setAttribute("object",o);

    改为session级别的

    点赞 评论 复制链接分享

相关推荐