ber*_*tie 5 jsf spring jsf-2 jboss-weld
我想实现这种理想主义:
到目前为止,我一直没有找到最佳组合来实现这些,因为据我所知,如果我错了,请纠正我:
请分享您的想法和经验.
谢谢 :-)
找到了一个有趣的页面,描述了如何用Spring替换Jboss Weld作为JSR 299 CDI实现.所以基本上,回答问题2.数字1也是间接回答的,因为我现在可以注入弹簧服务.
但仍然存在第三个问题.如果我可以在@Named中使用@ViewScoped和Flash Scope,我会觉得非常有用,就像这篇文章一样.Flash范围实现还有待观察,但到目前为止我能得到的最接近的是这个页面.
希望用jsr 299实现替换spring的焊接仍然可以让我使用@ConversationScoped.
现在要测试一下,祝我好运:-)
成功地使用Spring 3而不是焊接来执行@Named,@ Inject.重要的是在faces-config.xml中设置el-resolver.
AFAIK,Spring 3目前还不支持CDI,所以bye2 @ConversationScoped.
对于范围界定,我仍然必须使用@Scope("request")或@Scope("session"),但如果我更喜欢@RequestScoped(javax.enterprise.context.RequestScoped)和@SessionScoped,我可以使用本文提供的桥梁.
本文中弹簧的范围("视图")就像魔术一样:-)
但是仍有一个问题,如何在Scope("view") - bean之间传递对象..祝我好运!
啊......终于完成了......使用JSF2提供的Flash传递变量确实像魔法一样.我不需要第三方实现.
所以基本上,我可以不用焊接,但是使用spring,可以使用常见的范围,包括视图范围,dan可以使用flash对象在bean之间传递.
缺少的一件事是会话范围,这对我来说不是一个主要问题.希望未来的春天可以支持这个对话范围.
干杯:-)
Weld(实际上是JSR-299 上下文和依赖注入的参考实现,也称为 Java EE 6 CDI)或多或少是为了在 Java EE 6 环境中取代 Spring 而发明的。我建议使用 Java EE 6 CDI 而不是 Spring。当 Java EE 6 提供相同的开箱即用功能时,为什么还要使用第三方框架?
如果 Spring 后端确实无法更改,那么我建议坚持使用它,不要与 Java EE 6 CDI 注释混合使用,以免造成混乱和维护麻烦。
归档时间: |
|
查看次数: |
6675 次 |
最近记录: |