目前我在将旧的WAS-8的Java Enterprise项目迁移到Liberty Profile 17时遇到问题。在我的情况下,环境无法在richfaces jar中找到一堆css / js文件。在浏览器中加载页面,WLP17将这样的警告写入日志文件:
type my_type is integer range 0 to 31;
signal address_q : my_type;
signal address_d : my_type;
我使用maven构建项目,我在父pom中定义了richfaces依赖项,如下所示:
[WARNING ] SRVE0190E: File not found: /org.richfaces.resources/javax.faces.resource/org.richfaces.staticResource/4.5.17.Final/PackedCompressed/org.richfaces/jquery.js
然后,我有几个EJB和WAR项目一起打包到一个EAR文件中。使用richfaces的WAR项目包含richfaces依赖项,并提供了范围:
<dependency>
<groupId>org.richfaces</groupId>
<artifactId>richfaces</artifactId>
<version>4.5.17.Final</version>
</dependency>
最后,EAR pom依赖于richfaces来确保库包含在EAR文件中。由于任何原因,自由无法找到位于richfaces jar中的资源。
我检查了创建的EAR文件,它包含richfaces库。然后,我检查了richfaces库,还包含了找不到的文件。
我还有其他配置要做吗?
答案 0 :(得分:1)
应该在Web应用程序WAR中捆绑预期从META-INF / resources /提供静态文件的jar库。 Servlet 3.0规范的4.6节是相关的:
getResource和getResourceAsStream方法使用带有的String 将“/”作为提供资源路径的参数 相对于上下文的根或相对于 web中JAR文件的META-INF / resources目录 应用程序的WEB-INF / lib目录 ...
答案 1 :(得分:0)
@ wtlucy的评论确实解决了我的问题。谢谢。
我已将richfaces库放入需要这些库的WAR文件中。