我用的是Mojarra 2.1。29并具有会话范围的JSF托管bean
@ManagedBean
@SessionScoped
public class UserContext{
//staff
}
和一个Spring的豆子:
public class UserReproducer{
private User user;
public void reporoduce(){
if(user == null){
//Here I need to recreate the userContext managed bean
//do some other staff
}
}
}
事实上,我需要JSF中的某种自定义范围,即在满足条件时从头开始重新创建userContext
bean。有可能以某种方式做吗?通过重新创建,我的意思是在第一次创建时清理它的所有属性。
使会话无效,以销毁会话范围的bean:
FacesContext.getCurrentInstance().getExternalContext().invalidateSession();
从Spring Security注销的另一个选项是清除上下文:
SecurityContextHolder.clearContext();
问题内容: 我不确定我在做什么是错误的,还是只是错过了某个地方的注释或配置项。情况如下: 我有一个JSF应用程序,其会话范围的bean名为。在创建时,此Bean 注入了一个应用程序范围的Bean引用(类型)。首次创建会话时,此方法正常。依赖项注入是通过文件中的元素完成的,如下所示: 因为序列化时让我的对象包含对象没有意义,所以我在对象中将引用标记为瞬态: 直到停止Web应用程序(在我的Tomcat
在JSF1.2应用程序中,我是否可以覆盖使用子类返回的会话范围的托管Bean? 阶级结构 我有一个会话范围的托管Bean,,及其子类,: 面配置。xml 问题陈述 EL表达式返回的实例。 我想用的实例重新绑定名称,以便EL表达式为会话的其余部分返回子类的实例。 有没有办法实现我的目标? 激励范例 处理应用程序主页后面的GUI逻辑。当用户从专用登录页面进入应用程序时,我需要提供一个受限的、简化的主页
我编写了一个会话范围的托管bean,用于在domino xpages应用程序中缓存sesion用户特定的信息,如下代码所示: 然后,我在faces配置中声明了它,使其成为会话范围的bean: 在测试bean时,我通过#{NBUser.fullUserName}使用它,它并不总是返回当前domino http会话上下文的用户,例如,我首先由用户“user1”登录并注销,然后由user2登录,bean
我有一个会话范围的CDI托管bean: 在某个流之后,我需要从会话中删除这个bean,对于该流,我使用了以下代码,如下面的答案所示: 但是,它不起作用,仍然留在会话中。 我是否遗漏了什么?
我在解决如何正确处理JSF中会话的自动销毁方面遇到了困难。当然,此时,容器会使会话失效,从而也会在会话范围的bean上调用@PreDestroy方法。 在某些会话范围bean的预销毁中,我们正在注销一些侦听器,如下所示: 然而,getWS()方法实际上试图获取对另一个会话范围bean的引用,但失败了,如返回null。Ryan Lubke认为,后者似乎是正常的JSF行为: 我们遵守这里的规范。我不确
问题内容: 我正在尝试以编程方式在Java中创建新的密钥库。如下代码: 引发未初始化的KeyStore异常。 问题答案: 创建密钥库后,需要将其加载。load方法要求读取FileInputStream,但是如果您提供一个null,则将加载一个空的KeyStore。 看到这个链接