将参数注入Beans,CDI bean VS JSF bean

时间:2012-07-25 10:58:39

标签: java jsf cdi code-injection

经过一些实验,我已经能够使用@ManagedBean和一些EL将我的GET参数注入@ManagedProperty(因此,一个JSF)bean。

现在,除了从FacesContext.getCurrentInstance().getExternalContext()读取参数图的方法之外,我还无法将我的GET参数注入@Named(因此,CDI-)bean。

所以,我一直在阅读JSF bean和CDI bean的优缺点。 简而言之,我遇到两个问题: 1。使用JSF bean而不是CDI bean会遇到任何缺点吗? 第2位。如果是这样,是否有一种干净的方法将我的GET参数注入CDI bean?

1 个答案:

答案 0 :(得分:1)

我希望我不会在这里启动一个火焰战争,但是可以肯定地说CDI范围和依赖注入机制比JSF范围覆盖得更多。一般来说,你最好使用CDI范围 - 但是这里可以进入几乎任意的细节。

关于你的问题:Seam Solder带来了许多其他的东西 - http-parameter-injection。检查this

<强>更新 你是否应该害怕将Solder集成到你的项目中(不要!),看一下具有魔力的relevant source-code。您可以轻松地将其复制到您的项目中 - 这只是Solder背后的开发人员在他们的脑海中有一些角落,而不是您当场想出的角落。