Websphere Liberty配置文件:[警告] SRVE0190E:在EAR文件中包含的库中找不到文件

时间:2017-11-20 13:40:25

标签: maven java-ee websphere-liberty open-liberty

目前我在将旧的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库,还包含了找不到的文件。

我还有其他配置要做吗?

2 个答案:

答案 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文件中。