具有分布式系统时在拦截器中访问 FacesContext

Access FacesContext in interceptor when having distributed system

我想知道是否有一种方法可以访问业务层中的 http 请求参数,例如(RemoteHost、LocalPort 等)或 FacesContext(ejb 或拦截器),但对于分布式系统。

所以场景是我有一个拦截器,当 jsf 与控制器 (managedBean) 交谈然后与 ejb 方法交谈时,当我试图获取

FacesContext.getCurrentInstance() 

对于分布式系统,我得到了 null 。

谢谢

您在服务层中不应该对特定于视图层的 API 感兴趣。它违反了 Law of Demeter 并使服务层无法在其他视图层(例如 JAX-RS、Servlets/JSP 等)上重用。

相反,让视图将感兴趣的信息作为普通方法参数传递。

另请参阅:

  • JSF Service Layer