0 0

问个SESSIONID的问题5

最近将weblogic81升级到了weblogic10
结果发现原来代码中document.cookie中不再有JSESSIONID
但是用httpwatch看,JSESSIONID还是有send和recv的。
通过控制台看了weblogic81和weblogic10的配置,没发现明显的异样。
我想问一下,怎么才能把JSESSIONID写到cookie中。
问题补充:
我的应用原来在weblogic81下,是可以通过document.cookie获取JSESSIONID的。
但是部署到weblogic10后,就不行了。

应该不是代码的问题。

我也尝试在servlet中增加cookie,但还是不行。
所以我怀疑和weblogic的配置有关。
2010年1月11日 20:59

4个答案 按时间排序 按投票排序

0 0

weblogic81升级到了weblogic10
其中的机制估计是发现了变化,应该和代码无关吧,
从weblogic配置入手看

2010年1月13日 08:22
0 0

cookie操作的代码示例,看一下你就会明白的

import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class CookieUtil {

  public static Cookie getCookie(HttpServletRequest request, String name) {
    Cookie cookies[] = request.getCookies();
    if (cookies == null || name == null || name.length() == 0) {
      return null;
    }
    for (int i = 0; i < cookies.length; i++) {
      if (name.equals(cookies[i].getName())
          && request.getServerName().equals(cookies[i].getDomain())) {
        return cookies[i];
      }
    }
    return null;
  }

  public static void deleteCookie(HttpServletRequest request,
      HttpServletResponse response, Cookie cookie) {
    if (cookie != null) {
      cookie.setPath(getPath(request));
      cookie.setValue("");
      cookie.setMaxAge(0);
      response.addCookie(cookie);
    }
  }

  public static void setCookie(HttpServletRequest request,
      HttpServletResponse response, String name, String value) {
    setCookie(request, response, name, value, 0x278d00);
  }

  public static void setCookie(HttpServletRequest request,
      HttpServletResponse response, String name, String value, int maxAge) {
    Cookie cookie = new Cookie(name, value == null ? "" : value);
    cookie.setMaxAge(maxAge);
    cookie.setPath(getPath(request));
    response.addCookie(cookie);
  }

  private static String getPath(HttpServletRequest request) {
    String path = request.getContextPath();
    return (path == null || path.length()==0) ? "/" : path;
  }

}

2010年1月12日 10:18
0 0

写Cookie

     String jsessionid = request.getSession().getId();
     Cookie cookie = new Cookie("jsessionid", jsessionid);
     response.addCookie(cookie);

读Cookie
String jsessionid = null;
		Cookie [] cookies = request.getCookies();
		for(int i = 0, lenght = cookies.length; i < lenght; i++) {
			Cookie cookie = cookies[i];
			if("jsessionid".equals(cookie.getName())) {
				jsessionid = cookie.getValue();
			}
		}

2010年1月12日 09:39
0 0

这种就要看应用服务器内部的实现机制是怎么样了,
你当然也可以自己把JSESSIONID写到cookie中,servlet提供相应的api来做

2010年1月11日 21:07

相关推荐

    面试宝典-面试90%被问到的 Session、Cookie、Token.pdf

    4. 客户端每次向同一个网站发送请求时,请求头都会带上该 Cookie 信息(包含 sessionId),然后,服务器通过读取请求头中的 Cookie 信息,获取名称为 JSESSIONID 的值,得到此次请求的 sessionId。 Session 的缺点...

    Java Web学习之Cookie和Session的深入理解

    * 客户端禁用Cookie,问Session还能工作吗?答案是不能,绝大多数的网站是这样,原因是没有使用URL重写机制来解决Cookie被禁用的问题。 * Cookie可以用来实现购物车功能吗?答案是可以,Session能做的Cookie也能做。

    PHP中设置一个严格30分钟过期Session面试题的4种答案

    至于为什么会在面试中问这个问题,原因可能包括:检验面试者的基础知识,理解Session和Cookie之间的区别,以及他们是否了解PHP的Session回收机制。在实际应用中,30分钟的过期时间可能是为了实现诸如限时优惠券这样...

    从别人那拷下来的几点Session使用的经验

    问:当页面中是否了frameset,发现在每个frame中显示页面的SessionID在第一次请求时都不相同,为什么? 答:原因是你的frameset是放在一个htm页面上而不是ASPX页面。 在一般情况下,如果frameset是aspx页面,当你...

    Oracle常用问题1000问

    alter system kill session ,把那个session给杀掉,不过你要先查出她的session id or 把该过程重新改个名字就可以了。 57. SQL Reference是个什么东西? 是一本sql的使用手册,包括语法、函数等等,oracle官方...

    性能测试问题点总结及问分析定位

    - **关联**:关联指的是在脚本中处理动态参数,如Session ID或Token,确保每次请求的唯一性。这通常涉及使用正则表达式或其他技术来提取并保存服务器返回的动态值。 - **转义字符**:在手动关联时,转义字符如`\\`...

    面试SSH常问问题及java面试的一些常问问题

    根据给定文件的信息,我们可以总结出以下几个主要的知识点: ### 1. Struts2 的拦截器(Interceptor)机制 在Struts2框架中,拦截器是处理请求的关键组件之一,可以用于实现诸如权限控制、日志记录等功能。下面...

    oracle傻瓜问题1000问

    根据提供的文件信息,“Oracle傻瓜问题1000问”主要涵盖了Oracle数据库应用中的常见问题解答,这些问题涉及了从安装配置到日常管理维护等多个方面。接下来,我们将详细解析部分问题及其答案,帮助读者更好地理解...

    redis-session-store:一个基于Redis的Rails的简单会话存储

    redis-store是一种千篇一律的解决方案,我发现它不能与Rails一起正常使用,这主要是由于问题似乎出在Rack的Abstract::ID类中。 我想要一些有效的方法,所以我公然从Rails的MemCacheStore窃取了代码,并将其转换为...

    面试 HTTP ,99% 的面试官都爱问这些问题1

    Session则是在服务器端存储用户会话信息,并通过唯一标识(Session ID)关联客户端。 在面试中,理解HTTP和HTTPS的基本原理、它们的区别以及GET和POST方法的用法是非常重要的。此外,还需要掌握HTTP协议的其他方法...

    Oracle应用常见傻瓜问题 1000问

    SELECT object_id, owner, object_name, locked_mode, session_id FROM v$locked_object; ``` #### 15. 如何以archivelog的方式运行Oracle? 要启用归档模式,需要先确保数据库处于mount状态,然后执行以下命令: ...

    基于PHP的新浪爱问知识人PHP程序源码.zip

    新浪爱问知识人是一个在线问答平台,用户可以提出问题、回答他人的问题,分享知识和经验。因此,这个源码可能包含了一个完整的问答系统框架,包括用户注册、登录、提问、回答、评论、点赞、收藏等互动模块。 【标签...

    用户在线检查代码

    //online.cs(用户在线检测) /*程序实现思路: 该用户有以下几个属性: name:用户名 sessionID:用户ID,通过它唯一表示一个用户 iswhere :附加信息,用户当前所在位置 last...

    php中如何判断当前用户已在别处登录

    有学员问到如何判断当前用户已在别处已登录,抽时间做了个小demo 主要思路: 1.登录时,将用户的SessionID记录下来 2.验证登录时,将记录的该用户SessionID与当前SessionID匹配 3.如果不相同,说明在别处登录 具体请...

    ORACLE应用中常见的傻瓜问题1000问-1

    ### ORACLE应用中常见的傻瓜问题1000问(精选知识点解析) #### 知识点1:如何查看系统被锁的事务时间? 在Oracle数据库中,了解哪些对象被锁定以及锁定的时间对于诊断性能问题至关重要。你可以使用以下SQL查询来...

    ORACLE应用常见傻瓜问题1000问

    《ORACLE应用常见傻瓜问题1000问》这一资料专为初学者设计,旨在解答在使用Oracle数据库过程中遇到的各类基础性疑问。以下,我们将深入探讨文档中列出的部分核心知识点,帮助读者更好地理解Oracle的基本操作与管理。...

    c# 面试130问(含答案)

    【C#面试130问】涵盖了许多C#的基础及进阶知识点,是准备C#面试的宝贵资料。...以上是部分问题的详细解析,完整130问涵盖了更多C#语言特性和.NET框架的应用,对于C#开发者来说是全面了解和掌握C#知识的重要资源。

    .NET面试常见问题

    - **Session变量**: Session是服务器端存储机制,可以用来跨多个请求保存用户特定的数据。通过Session变量传递值,可以保持数据的持久性,但需要注意性能和安全性。 - **Server.Transfer**: 此方法可以在服务器...

Global site tag (gtag.js) - Google Analytics