从多个portlet访问Util jar中的FacesContext

时间:2009-12-10 20:44:30

标签: java jsf portlet

我们在websphere门户环境中运行了几个JSF portlet。开发人员想要创建一个存在于共享库中的Utility jar,因此所有portlet都可以访问它。在这个jar中,他想要一个具有静态方法的faces实用程序类;此方法将访问当前的FacesContext实例并返回该上下文的会话映射。

我们一直在讨论这是否是一种明智的方法,以及我们如何确定将正确的上下文实例返回到每个portlet实例。有没有经验这样做,无论好坏?

1 个答案:

答案 0 :(得分:1)

FacesContext.getCurrentInstance()封装了与请求相关的人工制品。上下文是线程本地的 - 它在请求开始时设置,并由作为控制器的portlet在最后处置。因此,只要您能保证代码作为请求的一部分被调用,它就应该没问题;如果调用转义请求线程,则会出现问题。