我认为这可能不是最好的主意吗?
private static Application app = FacesContext.getCurrentInstance()
.getApplication();
...或在不确定当前执行线程是否由于servlet请求而导致对FacesContext.getCurrentInstance()的任何其他调用时?
据我了解,FacesContext.getCurrentInstance()通过将当前的face上下文分配给线程(例如ThreadLocal变量)来工作。上面的代码通常可以在JSF支持bean或JSF组件类之类的类中工作,因为恰好加载该类并实例化该类成员(静态变量)的执行线程通常是FacesServlet请求。但是我仍然认为依靠它不是一个好主意。
同意还是不同意?有想法吗?谢谢。
最佳答案
取决于上下文,在初始化期间使用FacesContext.getCurrentInstance()可能是一个好主意,也可能不是一个好主意。
我无法想象将其分配给静态var的方案是一个好主意。
关于java - JSF-在静态上下文中调用FacesContext.getCurrentInstance(),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1494813/