【问题标题】:JSF 2.2 inject Deltaspike (CDI) windowId into BeanJSF 2.2 将 Deltaspike (CDI) windowId 注入 Bean
【发布时间】:2018-01-08 05:29:45
【问题描述】:

我目前正在使用带有 Deltaspike 的 JSF 2.2。我们使用 Deltaspike 的 Multi-Window-Handling 来处理单独的窗口。它很好用,但在特定情况下,我们需要窗口 ID。

我可以通过以下方式阅读它: FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap().get("dswid");

有没有更优雅的方法,也许是注入到我的 bean 中?

问候,

塞巴斯蒂安

【问题讨论】:

标签: jsf cdi jsf-2.2 wildfly-10 deltaspike


【解决方案1】:

您可以使用来自 OmniFaces 的Param。我觉得它更优雅,但它是第三个库。

@Inject @Param
private String dswid;

【讨论】:

  • 像魅力一样工作!
  • Deltaspike 和 omnifaces 应该始终是 jsf 项目的一部分
【解决方案2】:

如果不想添加库,也可以注入外部上下文。

@注入 私有ExternalContext externalContext;

【讨论】:

  • 不依赖于不同的框架并且真正注入参数,而不仅仅是上下文,请参阅stackoverflow.com/questions/13239975/… 和 Deltaspike 和 OmniFaces 应该始终是 jsf 项目的一部分 ;-)跨度>
猜你喜欢
  • 2015-04-15
  • 2021-02-25
  • 2016-08-02
  • 2012-07-23
  • 2019-06-04
  • 1970-01-01
  • 2016-06-08
  • 1970-01-01
  • 2014-06-02
相关资源
最近更新 更多