0

我很想用 JSF 构建一个 Spring Boot-Applikation。Build-Tool 是 Gradle,为了在 Spring 中集成 JSF,我们使用 Joinfaces。如果我从 Spring Tool Suite(STS) 或 Gradle bootRun 启动应用程序,它会加载所有可用的配置文件,一切正常。

如果我运行 bootJar 并使用 java -jar 启动应用程序,它会丢失几个配置并且未加载 facesflows。
我们使用 joinfaces 4.1.5、SpringBoot 2.2.5 和 Gradle 6.0.1

这是 STS 或 bootRun 日志的一部分:

加载准备好的扫描结果需要 0.4388ms
读取配置:jar:file:...org.primefaces.extensions/ .../META-INF/faces-config.xml
读取配置:jar:file:...org.primefaces/primefaces.../faces-config.xml
读取配置:jar:file:.../weld-servlet-core-3.1.2.Final.jar!/META-INF/faces-config.xml
读取配置:jar:file:.../joinfaces-autoconfigure- 4.1.5.jar!/META-INF/faces-config.xml
读取配置 /dataTableLazy/dataTableLazy-flow.xml
读取配置 /button/button-flow.xml
读取配置 /confirmDialog/confirmDialog-flow.xml
读取配置 /dataTable /dataTable-flow.xml
读取配置 /main/main-flow.xml
读取配置 /accordion/accordion-flow.xml
工件 'myfaces-api' 在版本 '2.3.6' 中从路径 '...'
Artifact' myfaces-impl' 在版本 '2.3.6' 中从路径 '...' 中找到已
启用 MyFaces CDI 支持


但由于 bootJar 导致的 jar 调用缺少 flow-xml 文件:

加载准备好的扫描结果耗时 0.6126 毫秒
读取配置:jar:file:...org.primefaces.extensions/.../META-INF/faces-config.xml
读取配置:jar:file:...org.primefaces/ primefaces.../faces-config.xml
读取配置:jar:file:.../weld-servlet-core-3.1.2.Final.jar!/META-INF/faces-config.xml
读取配置:jar:文件:.../joinfaces-autoconfigure-4.1.5.jar!/META-INF/faces-config.xml
Artifact 'myfaces-api' 在版本 '2.3.6' 从路径'...'
Artifact'中找到myfaces-impl' 在版本 '2.3.6' 中从路径 '...' 中找到
MyFaces CDI 支持已启用

我们的资源树:

src/main/resources
..META-INF
....resources
......accordion
........accordion.xthml
........accordion-flow。 xml
......button
............button.xthml
............button-flow.xml
......main
............main.xthml
........main-flow.xml
......css
......等等......
..application.properties

有谁知道为什么从 bootJar 开始启动 Jar 并从 bootRun 开始显示不同的行为?有没有人遇到过同样的问题?

4

0 回答 0