request 是不能传递到下一页的,除非用
<jsp:include
<jsp:forward
才可以!

解决方案 »

  1.   

    那如果不用链接和表单,怎么通过点击“submit”字符串使网页跳转而且传递参数?
      

  2.   

    URL重写,用getParameter来接收。
      

  3.   

    如果想用jsp:forward呢?
    如何点了submit后才forward?
      

  4.   

    用session或application替换代码中的request就可以传递对象了
       page/session/application.setAttribute("attributeName",object)   Object (Object)page/session/application.getAttribute("attributeName")a.jsp代码 
    <html> 
    <body> <% 
          String   a="abc"; 
          sessoin.setAttribute("aaa",a); 
    %> 
    <a   href="b.jsp"> submit </a> 
    </body> 
    </html> b.jsp代码 
    <html> 
    <body> <% 
              String   c=(String)sessoin.getAttribute("aaa"); 
              out.println(c); 
              sessoin.setAttribute("bbb",c); 
    %> 
    <a   href="c.jsp"> submit </a> 
    </body> 
    </html> c.jsp代码 
    <html> 
    <body> 
    <% 
              String   d=(String)sessoin.getAttribute("bbb"); 
              out.println(d); 
      
    %> 
    </body> 
    </html> 这样应该可以正常输出了!
      

  5.   

    当你访问a.jsp的时候,在服务上边创建了c这个字符串对像,然后返回到浏览器(此时看到是的JSP生成的HTML代码!切记!).因为服务器完成了a.jsp的输出工作,请求完成了,请求对像被回收,c属于request范围的.它也被回收了.当看到a.jsp页面时,此时只有HTML代码......没有Java对码.服务在a.jsp运行时所创建的所有对像也没有了.点击链接去到b.jsp,产生了一个新的request对像,与访问a.jsp产生的request对像不一样,所以取不到访问a时所创建的c对像.再从b访问c的原理与a.访问b的一样了.对于bwl19870918所以是可以,为什么?因为session对像与request对像不一样.当你访问a.jsp时的session与看到a.jsp页面后再去访问b.jsp时所用到的session是同一个同像.b访问c时也是一样的.-->a.jsp---->request1
    -->b.jsp---->request2
    -->c.jsp---->request3a.jsp-->session
    b.jsp-->session
    c.jsp-->session三个请求对像不一样,在request1中放一个对像,在request2,requset3中去取肯定是取不到的
    但是三个session都是同一个对像,在访问a.jsp的时候就在这个session中放了一个对像,b.jsp就可以在这个session中取到那个对像了.
      

  6.   

    那为什么JSP传给servlet就可以用request?
    是不是两个jsp页面之间不能用request,而jsp到servlet、servlet到jsp、servlet到servlet之间可以用request?
      

  7.   

    request是这样产生的,访问JSP的结果是看到HTML的页面,这时候可以把网线拿掉,但是还是可以看到结果!当你点击一个连接或者提交一个表单的时候就会再一次访问服务器,这时候就会创新一个request给serverlet,就是你说的JSP到Servlet,然后当Servlet完成后会转发到一个JSP中,这时候还是在服务器上运行,是对一个请求对像。就是你说的Servlet到JSP。Servlet到Servlet也是一样的啊。在一个Servlet完成过程中转到另一个Servlet是可以的。同一个请求。
      

  8.   

    似乎有点明白了,是不是离开了服务器request就没了,只要持续地在服务器上运行就是同一个request?
    假如一个jsp页面生成html即使后台牵涉到n个servlet但这仍然是一个request,
    对于含有表单的页面,在访问该页面时是一个request,在表单提交时是下一个request.
    我在访问a.jsp时,request.setAttribute("aaa",a)作为jsp网页的内容就已经完成了,当我按submit链接时开始了新的request