我找到了一些关于将 JSF 技术与 Spring Boot 集成的教程,但让 OmniFaces 与 Spring Boot 一起使用似乎是一项相当复杂的工作。将这两者整合在一起是个好主意吗?
OmniFaces 通过 JoinFaces 提供。
<dependency>
<groupId>org.joinfaces</groupId>
<artifactId>omnifaces-spring-boot-starter</artifactId>
<version>5.x.x</version>
</dependency>
或者当您仍在使用 Spring Boot 2.x 时:
<dependency>
<groupId>org.joinfaces</groupId>
<artifactId>omnifaces3-spring-boot-starter</artifactId>
<version>4.x.x</version>
</dependency>
如果您主要对 OmniFaces
@ViewScoped
感兴趣,那么您确实需要 @Named
而不是 @Component
才能充分利用其功能。为了能够通过 @Autowired
将现有的 Spring 托管 bean 注入到那些 @Named
bean 中,而无需任何额外的模糊处理,您可能需要按照本博客中所述安装 CDI 扩展 Using OmniFaces CDI @ViewScoped with unload/destroy在 Spring Boot 项目中。