嗯,我从一个jsf Weld应用程序开始,将使用CDI,但我对焊接和焊接器有点困惑,或者它是焊接器使用的引擎盖下的焊接。
Weld以前也叫WebBeans吗?
就像Apache MyFaces一样,很明显,CDI实现是用代码编写的。
发布于 2011-11-21 16:27:00
CDI是JBoss规范的一个实现(参考)。
在最终定稿之前,CDI规范被称为WebBeans,这可能会导致一些混乱。
Apache CODI不是CDI实现。它是一组CDI扩展,便于在多个场景中使用CDI。
焊接器和Seam3也是如此。焊料是一组低级扩展,而Seam3是一组依赖焊料提供高级扩展的库。有人建议在CDI规范的未来版本中包含一些焊接器功能。
CODI、焊接器和Seam3都需要一个CDI实现。Weld是一个参考,其他有价值的实现是OpenWebBeans (来自Apache)和CanDI (来自Caucho Resin)。
虽然CDI实现应该是可互换的,但从实用的角度来看,您应该选择是更多CODI还是Seam3,然后选择CODI/OpenWebBeans堆栈或Seam3/焊接器/焊接堆栈。
更新:这个话题进展很快。现在建议将此Seam.Next announcement理解为Seam,焊接器和CODI最终将合并到Apache保护伞下名为DeltaSpike的独特项目中。
https://stackoverflow.com/questions/8199639
复制相似问题