seam - 在 JSF、Weld 或 Solder 中使用 CDI

标签 seam cdi jboss-weld deltaspike

嗯,我从一个 jsf 网络应用程序开始,将使用 CDI,但在焊接和焊接之间有点混淆,或者焊接在引擎盖下使用了焊接。

Weld 以前也叫 WebBeans 吗?

就像 Apache MyFaces 一样,很明显 CDI 实现是 CODI

最佳答案

JBoss Weld 是 CDI 规范的一种实现(引用)。

在最终版本之前,CDI 规范被称为 WebBeans,这可能会导致一些混淆。

Apache CODI 不是 CDI 实现。它是一组 CDI 扩展,有助于在多个场景中使用 CDI。

Solder 和 Seam3 也是如此。 Solder 是一组低级扩展,而 Seam3 是一组依赖 Solder 提供更高级别扩展的库。有人提议在 CDI 规范的 future 版本中包含一些 Solder 功能。

CODI、Solder 和 Seam3 需要 CDI 实现。 Weld 是引用,其他有值(value)的实现是 OpenWebBeans(来自 Apache)和 CanDI(来自 Caucho Resin)。

虽然 CDI 实现应该是可互换的,但从实用的角度来看,您应该选择更喜欢 CODI 还是 Seam3,然后选择 CODI/OpenWebBeans 堆栈或 Seam3/Solder/Weld 堆栈。

更新 : 关于这个话题,事情进展很快。现在推荐阅读这篇Seam.Next announcement由于 Seam、Solder 和 CODI 最终将合并到名为 DeltaSpike 的独特项目中。在 Apache 的保护伞下。

关于seam - 在 JSF、Weld 或 Solder 中使用 CDI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8199639/

相关文章:

java - 如何使用java在java中使用seam生成excel文件

hibernate - Seam POJO 的手动事务

java - 焊接中外部(第 3 方)bean 的解析

java - Arquillian 中的多个容器错误

java - 将无状态 session bean 注入(inject) Seam 2.2 中的 EntityHome 派生后引发空指针异常

java - 将 session 对象放入 Seam 拦截器中

java - EJB 拦截器和事务生命周期或如何拦截提交/失败事件?

java - @Transactional 在 CDI Bean 的基类中被忽略

java - @InterceptorBinding/CDI/EJB 3.2 - 注入(inject)问题

java - 构造函数中的缝焊注入(inject) : Unable to resolve any beans for Types