gpt4 book ai didi

java - 无法使用在 WebSphere 上运行的 SpringBoot 应用程序找到 Webjar

转载 作者:太空宇宙 更新时间:2023-11-04 09:28:55 25 4
gpt4 key购买 nike

我一直在尝试在 WebSphere 服务器上托管 Spring Boot 应用程序。

版本:

  • SpringBoot 2.1.6.RELEASE
  • 带有 JavaEE 8 的 WebSphere Liberty 19.0.0.6
  • webjars-locator 0.36

该应用程序已成功部署在独立的 Tomcat 9.0.22 上,并且可以在那里解析 webjar。但是,对于 WebSphere,我在尝试从 html 页面访问 webjar 时收到错误:

2019-08-05 10:43:11.839 DEBUG 1 --- [ecutor-thread-6] o.s.web.servlet.DispatcherServlet        : GET "/appcontext/webjars/jquery/jquery.min.js", parameters={}
2019-08-05 10:43:11.845 DEBUG 1 --- [ecutor-thread-6] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped to ResourceHttpRequestHandler ["classpath:/META-INF/resources/webjars/"]
2019-08-05 10:43:11.849 DEBUG 1 --- [ecutor-thread-6] o.s.w.s.r.ResourceHttpRequestHandler : Resource not found
2019-08-05 10:43:11.849 DEBUG 1 --- [ecutor-thread-6] o.s.web.servlet.DispatcherServlet : Completed 404 NOT_FOUND

并且 webjars 模式已被 Spring 成功映射:

2019-08-05 10:43:09.039 DEBUG 1 --- [ecutor-thread-6] o.s.w.s.handler.SimpleUrlHandlerMapping  : Patterns [/webjars/**, /**] in 'resourceHandlerMapping'

最佳答案

此问题的解决方案是将 classloading 条目添加到 WebSphere server.xml 文件,并将 useJarUrls 属性设置为 true:

<server description="myServer">
<featureManager>
<feature>servlet-3.0</feature>
</featureManager>
<classloading useJarUrls="true"/> <!-- this line was added -->
<httpEndpoint httpPort="9080" httpsPort="9443" host="*" id="defaultHttpEndpoint"/>
</server>

这个IBM support issue对解决这个问题特别有帮助。

关于java - 无法使用在 WebSphere 上运行的 SpringBoot 应用程序找到 Webjar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57357897/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com