一个response.sendRedirect路径的问题

问题描述

想用session对象实现页面传值的问题,前一个页面是session.setAttribute("itemslist",itemslist);response.sendRedirect("Show.jsp");在Show.jsp中用getAttribute可以得到itemslist的值,但是如果改成下面这个response.sendRedirect("http://localhost:8080/ShoppingCart/Show.jsp");在Show.jsp中得到的值就是null了,请问这两个有什么区别么?

解决方案

解决方案二:
你是把对象放到session中的,当你执行完这个操作:response.sendRedirect("http://localhost:8080/ShoppingCart/Show.jsp");等于是开启了另一个会话。不是同一个会话了。当然就没有了。
解决方案三:
引用1楼licip的回复:

你是把对象放到session中的,当你执行完这个操作:response.sendRedirect("http://localhost:8080/ShoppingCart/Show.jsp");等于是开启了另一个会话。不是同一个会话了。当然就没有了。

+1session是基于一个会话中存取的。
解决方案四:
在你这个问题上它们没区别都,能得到HttpSession保存的东西,请楼主仔细检查。
解决方案五:
不管show.jsp还是http://..../show.jsp都能获取到session里面的内容...
解决方案六:
当你用http://开头的时候容器当做跳转到其他应用的。所以会直接定位到该URL。
解决方案七:
引用1楼licip的回复:

你是把对象放到session中的,当你执行完这个操作:response.sendRedirect("http://localhost:8080/ShoppingCart/Show.jsp");等于是开启了另一个会话。不是同一个会话了。当然就没有了。

这个对吗?如果你放在session中,他们的值都应该可以去到,除非你进行了跨域的操作。建议楼主好好检查下自己的代码。看看是否是大小写等细节问题
解决方案八:
检查域名是不是一致。
解决方案九:
引用楼主hotmail1215的回复:

想用session对象实现页面传值的问题,前一个页面是session.setAttribute("itemslist",itemslist);response.sendRedirect("Show.jsp");在Show.jsp中用getAttribute可以得到itemslist的值,但是如果改成下面这个response.sendRedirect("http://local……

正解
解决方案十:
你是把对象放到session中的,当你执行完这个操作:response.sendRedirect("http://localhost:8080/ShoppingCart/Show.jsp");等于是开启了另一个会话。不是同一个会话了。当然就没有了正解
解决方案十一:
试试啊
解决方案十二:
一个站点是否可能有多个网卡地址在监听,比如你第一次访问时用的是http://192.168.0.1后来一跳变成了http://localhost?

时间: 2024-10-16 04:56:19

一个response.sendRedirect路径的问题的相关文章

response.sendRedirect的一点实际用法

redirect|response <黑咖啡 原创> 以下是一个购物单提交的jsp页面(正确的) <%@ page contentType="text/html" language="java" import="java.util.*,com.blackCoffee.shop.*,com.blackCoffee.util.*,com.blackCoffee.db.*" %><%@ page errorPage=&qu

使用response.sendRedirect的注意事项。

redirect|response 首先我们要明白用response.sendRedirect做转向的原理,它其实是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,所以用sendRedirect时,浏览器的地址栏上可以看到地址的变化.用<jsp:forward page=""/>则不同,它是直接在server做的,浏览器并不知道,也不和浏览器打交道,这从浏览器的地址并不变化可以看出.所以使用response.sendRedirect时就需要注意以下

jsp response.sendRedirect不跳转的原因分析及解决

最近做项目时遇到一个问题,明明加了response.sendRedirect() ,系统也执行了,但是它就是不跳转;最后在网上找到原因如下: 首先我们要明白用response.sendRedirect做转向的原理,它其实是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,所以用sendRedirect时,浏览器的地址栏上可以看到地址的变化. 用<jsp:forward page=""/>则不同,它是直接在server做的,浏览器并不知道,也不和浏览器

J2EE中RequestDispatcher.forward()和response.sendRedirect()的区别详谈

一.RequestDispatcher.forward() 在服务器端运行.采用采用请求转发,request对象始终存在,不会重新创建,前后页面共享同一个request.重定向后浏览器地址栏URL不变. public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException,IOException { response.setContentType("text/html

关于response.sendRedirect跳转不到指定的页面

问题描述 代码如下:<%@pagelanguage="java"contentType="text/html;charset=GB18030"pageEncoding="GB18030"%><%@pageimport="com.bjsxt.drp.sysmgr.*"%><%Stringcommand=request.getParameter("command");if(comm

java-为什么response.sendRedirect(url)不能改变地址栏

问题描述 为什么response.sendRedirect(url)不能改变地址栏 在Java文件中写了一个关于页面跳转的response.sendRedirect(url)方法,结果不能正常跳转 解决方案 http://www.jb51.net/article/39596.htm

jsp response.sendRedirect不跳转的原因分析及解决_JSP编程

最近做项目时遇到一个问题,明明加了response.sendRedirect() ,系统也执行了,但是它就是不跳转;最后在网上找到原因如下: 首先我们要明白用response.sendRedirect做转向的原理,它其实是向浏览器发送一个特殊的Header,然后由浏览器来做转向,转到指定的页面,所以用sendRedirect时,浏览器的地址栏上可以看到地址的变化. 用<jsp:forward page=""/>则不同,它是直接在server做的,浏览器并不知道,也不和浏览器

response.sendRedirect()跳转页面无法显示

问题描述 出现一个新问题:center_left.jsp,内容是Ext的一个form表单,1url:'servlet/AddQueServlet',具体如下:001<script type="text/javascript">002Ext.require([ '*' ]);003Ext.onReady(function() {//onReady()函数在页面注册多个函数,依次执行004 Ext.QuickTips.init();005 Ext.state.Manager.s

response.sendRedirect(&amp;amp;quot;&amp;amp;quot;);会造成死循环??????????

问题描述 Stringemail=request.getParameter("email");UserNewuser=getLoginUser(request);UserNewtemp=userNewManager.getByEmail(email);if(user==null&&temp==null){response.sendRedirect("/messageCounts.html?method=logIn");returnnull;}else