我正在运行在tomcat上的JSF / PrimeFaces Web应用程序,该应用程序使用Spring根据部署上下文注入不同的服务。当我意识到JSF 2.3需要一个CDI容器,但Spring并没有实现完整的CDI规范,并且从我读到的内容来看,我很快就打算将其迁移到JSF 2.3。
所以我的问题有两个方面:
1)那里的人如何应对?我已经读过一些解决办法,可以将CDI与Spring桥接起来?但是,您会推荐哪种桥接解决方案?桥接是一种长期解决方案吗,桥接是否有任何缺点(例如,没有工作功能)?
2)如果不再选择JSF,那么您将对基于Spring的新应用程序使用哪种Web前端技术?回到JSP?像百里香一样的模板? GWT还是vaadin?像reactJS或angular这样的Javascript技术并可以使用两种语言和数据模型?
感谢分享
答案 0 :(得分:2)
我的组织曾经使用JSF + Spring,但是现在我们正在朝Spring MVC + Thymeleaf迈进。在Spring MVC REST中使用Angular或React也不是一个坏选择,但Java M团队可以更快地上手使用Spring MVC + Thymeleaf,这将是更自然的选择。
答案 1 :(得分:1)
MyFaces 2.3.x应该仍然可以在Spring上运行。但是,我不确定3.x是否可以实现。
如果不想删除Spring,还可以添加CDI实现“ Apache OpenWebBeans”,该实现非常小(介于0.5mb和1mb之间)。 网上有“桥梁”,如何将Spring bean注入CDI bean,反之亦然。