java - JSF 1.2 中的 session 处理

标签 java jsf jsf-1.2

我们如何在 JSF 1.2 中处理 session 变量(添加/获取)?

一个场景:考虑一个用户登录成功的登录界面,用户模型存储在session中。用户模式包含用户角色。下次开始,对于每个用户操作,检查用户模型中的用户角色并相应地显示表单。在这种情况下,如何在 session 中添加用户模型以及如何每次从 session 中检索它?

以前我在 Struts 1.2 中工作,在 execute 方法中,我们有一个 request e=,它用于获取 session 并访问 session 变量。但我不确定如何在 JSF 1.2 中实现相同的目标。

唯一可行的方法是在 faces-config.xml 文件的 session 范围内添加托管 bean 吗?

请帮助我了解 JSF 1.2 中的 session 处理概念。

最佳答案

session 范围可由 ExternalContext#getSessionMap() 以编程方式获得在幕后代表 HttpSession#get/setAttribute() .

Map<String, Object> sessionMap = FacesContext.getCurrentInstance().getExternalContext().getSessionMap();
// ...

您当然也可以只将托管 bean 放在 session 范围内。可以通过 <managed-property> 从其他托管 bean 访问它(或者只是使用托管 bean 名称作为映射键遍历 session 映射)。

关于java - JSF 1.2 中的 session 处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16318477/

相关文章:

java - 如何在JSP中out.print() HTML属性?

jsf - 自动实例化 session bean?

java - gmaps primefaces 问题

java - JSF 保存我的 cookie 并获取空数组

java - 将操作方法​​添加到动态创建的组合中

javascript - 使用 Javascript 结合 Primefaces 和 Twitter bootstrap 启用/禁用提交按钮

java - JSF 1.2、Richfaces 3.X 和 Jboss 服务器 5.0 : After Adding Richfaces JAR it's giving Error

java - 关于Linux上Java的类路径设置

java - 我应该如何处理 Java 中的多线程?

Applet 和 Java 7 中的 JavaFX - 可能吗?