java - JSF 中每个用户/ session 的唯一标识符

标签 java jsf jsf-2

我有一个 JSF 应用程序,希望为每个在浏览器中打开该应用程序的用户分配一个唯一标识符。

为了实现它,我想使用一个全局 long 变量,并在新用户连接到 Web 应用程序时递增它。

我有 2 个问题:

1)我应该在哪里(在哪个方法中)放置增量代码?

2) 如何在 Web 应用程序的 Java 类中访问该全局变量?

最佳答案

您已经拥有一个由 appServer 免费分配的 session ID。要在您的 bean 代码中获取它:

ExternalContext ec = FacesContext.getCurrentInstance().getExternalContext();
HttpSession session = (HttpSession) ec.getSession(false);
String sessionId = session.getId();

关于java - JSF 中每个用户/ session 的唯一标识符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13444200/

相关文章:

java - 从 AsyncTask 实例快速更新 sqlite 数据库是否可取?我在服务中收到 ANR

javascript - 从 JSF 访问 Javascript 变量

validation - 用户输入的值在 JSF 中验证后消失

java - 反序列化 JSON 时为类创建指定附加参数

java - itextPdf 的问题,拒绝重新初始化先前失败的类 java.lang.Class<com.itextpdf.awt.PdfGraphics2D>

jsf - OSGI 和 JSF 如何协同工作?

java - 网站应用程序开发的 richfaces 替代方案

jsf - 从JSF获得警告:在我们尝试为Flash设置传出Cookie时,响应已经提交

jsf - 从 java.util.Map 创建动态表

java - 我在 Android Studio 中使用哪个版本的 JDK 有关系吗?