1

我以前从未在 JSF 中创建过自定义组件,所以我现在才注意到encodeBegin(),encodeEnd()等方法接受FacesContext参数。

FacesContext实例通常可以用FacesContext.getCurrentInstance().

所以,我想知道这些方法是否有FacesContext参数只是为了方便,或者可以在那里传递一些不同的对象(可能来自外部资源......)。如果后者是可能的,那么你能举个例子吗?

4

1 回答 1

3

它们可能碰巧在不同的线程中运行。FacesContext#getCurrentIsntance()只能肯定从 HTTP 请求执行的线程返回,因为它存储为ThreadLocal变量。

于 2010-04-26T11:51:11.050 回答