【问题标题】:Websphere Liberty Profile: [WARNING ] SRVE0190E: File not found in library that is contained in the EAR fileWebsphere Liberty Profile:[WARNING] SRVE0190E:在 EAR 文件中包含的库中找不到文件
【发布时间】:2018-05-03 18:07:25
【问题描述】:

目前,我在将 Java Enterprise 项目从旧 WAS-8 迁移到 Liberty Profile 17 时遇到问题。在我的情况下,环境无法在richfaces jar 中找到一堆 css/js 文件。在浏览器中加载页面,WLP17 将这样的警告写入日志文件:

[WARNING ] SRVE0190E: File not found: /org.richfaces.resources/javax.faces.resource/org.richfaces.staticResource/4.5.17.Final/PackedCompressed/org.richfaces/jquery.js

我使用 maven 构建项目,并在父 pom 中定义了 Richfaces 依赖项,如下所示:

<dependency>
    <groupId>org.richfaces</groupId>
    <artifactId>richfaces</artifactId>
    <version>4.5.17.Final</version>
</dependency>

然后,我将几个 EJB 和 WAR 项目打包到一个 EAR 文件中。使用 Richfaces 的 WAR 项目包含一个 Richfaces 依赖项,提供范围:

<dependency>
    <groupId>org.richfaces</groupId>
    <artifactId>richfaces</artifactId>
    <scope>provided</scope>
</dependency>

最后,EAR pom 依赖于richfaces,以确保该库包含在 EAR 文件中。由于任何原因,liberty 无法找到位于richfaces jar 中的资源。

我检查了创建的 EAR 文件,它包含richfaces 库。然后,我检查了 Richfaces 库,其中还包含未找到的文件。

我还有什么需要做的配置吗?

【问题讨论】:

  • 由于您尝试提供静态 Web 资源,因此将 Richfaces 库打包到 WAR 项目中可能是有意义的——而不是像您似乎正在做的那样在 EAR 级别。
  • 为什么要将richfaces 库打包到每个WAR 项目中?据我了解,它是可见的,并且它的资源在 EAR 文件中包含的所有库和档案的范围内。我可以在 JSF 页面中使用 Richfaces 标签,而不会出现运行时异常。
  • 我做了另一个有趣的观察:一些项目的静态资源(如 js 和 css 文件)放置在使用 library-attribute (library) 引用的子文件夹(如 resouorces/css/foo/bar.css) ="css/foo") 也没有找到。我将它们移动到 css 文件夹,现在它们被找到了。
  • 我认为这一定是我的 WLP 17 的任何错误配置问题或错误 ...
  • 我刚刚测试了你的想法,@wtlucy。现在可以了。我无法想象为什么,但也许我最终会找到任何解释。

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


【解决方案1】:

预期从 META-INF/resources/ 提供静态文件的 Jar 库应捆绑在 Web 应用程序 WAR 中。 Servlet 3.0 规范中的第 4.6 节是相关的:

getResource 和 getResourceAsStream 方法采用带有 前导“/”作为给出资源路径的参数 相对于上下文的根或相对于 web 中 JAR 文件的 META-INF/resources 目录 应用程序的 WEB-INF/lib 目录...

【讨论】:

    【解决方案2】:

    @wtlucy 的评论确实解决了我的问题。谢谢。

    我已将richfaces 库放入需要这些库的WAR 文件中。

    【讨论】:

      猜你喜欢
      • 2015-05-22
      • 1970-01-01
      • 2023-03-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多