从 JSF 请求中检索会话 ID 值

Posted

技术标签:

【中文标题】从 JSF 请求中检索会话 ID 值【英文标题】:Retrieving session ID value from a JSF request 【发布时间】:2010-10-20 19:52:47 【问题描述】:

如何在 JSF 托管 bean 中检索会话 ID 值?

【问题讨论】:

【参考方案1】:
FacesContext fCtx = FacesContext.getCurrentInstance();
HttpSession session = (HttpSession) fCtx.getExternalContext().getSession(false);
String sessionId = session.getId();

【讨论】:

我正准备用几乎完全相同的代码回答 :)【参考方案2】:

你试试


String uuidFc = FacesContext.getCurrentInstance().getExternalContext().getSessionId(true);

此行返回 facesContext sessionId 值

【讨论】:

这将返回 servletcontext sessionid。它与其他公认的答案有何不同?真实的?那么为什么要添加到答案中【参考方案3】:

您也可以使用OmniFaces JSF utility library。

String sessionId = Faces.getSessionId();

添加这个作为答案,因为如果你使用 JSF,你很可能会使用这个库。

【讨论】:

以上是关于从 JSF 请求中检索会话 ID 值的主要内容,如果未能解决你的问题,请参考以下文章

当所有检索值在laravel中具有相同的会话键时,如何检查会话数组是不是具有唯一的ID

Laravel 无法检索保存在 POST 请求中的会话数据

在 JSF 2.0 中检索其他组件的客户端 ID

从数据库中检索值并将其存储为会话变量

一旦分配给会话类的属性,就无法检索会话值[关闭]

iOS 检索 Web 响应数据后如何从 JSON 中检索值