我知道这听起来很奇怪,将CDI (Weld)和Spring混合起来用于控制器。
但想象一下这种情况:
现在出现的一个问题是,在我的控制器中,如何访问我的服务对象?
我认为这样的事情行不通:
@Named
@ConversationScoped
public class MyBean {
@Named
private SomeOtherBeanManagedByCDI myOtherBean; // this will work
@Autowired
private MySpringBean mySpringBean; // dont think that this will work
....
}对于如何使用cdi中的spring,有什么想法吗?谢谢!
更新
我刚刚测试了来自这篇文章的解决方案,到目前为止,它运行得很好,我感到放心了。
谢谢!
发布于 2011-06-24 22:57:34
编写了一个不错的扩展库,它支持将Spring注入CDI,反之亦然:
http://rick-hightower.blogspot.com/2011/04/cdi-and-spring-living-in-harmony.html
发布于 2011-09-29 20:13:38
在OP中仍然有一个很好的被接受的答案和一些好的编辑,但是我认为仍然有时间指出接缝弹簧模块。
发布于 2011-09-29 21:46:55
另外,如果您试图跨一系列页面管理状态,并且希望Struts或JSF或Spring能够有效地进行会话管理,那么Spring提供了您所需要的内容,并提供了在流的持续时间内存在的流作用域bean,大致相当于Seam / CDI中的会话。如果您想要一个更长时间的流程管理解决方案,Activiti SPring模块使配置一些在流程作用域持续时间内的bean变得非常简单,类似于Seam为jBPM提供的功能。
https://stackoverflow.com/questions/5510144
复制相似问题