【问题标题】:Access images in src/main/webapp/images in Vaadin project在 Vaadin 项目中访问 src/main/webapp/images 中的图像
【发布时间】:2016-11-30 15:51:45
【问题描述】:

在我的 Vaadin 项目中,我希望能够直接以静态资源的形式访问图像。当我将图像放在 src/main/webapp/VAADIN/themes/... 下面时,它可以工作。 如果图像位于 src/main/webapp/images 中,我该怎么做才能访问它们? 到目前为止,我已经看到我可以将此 servlet-mapping 放在我的 web.xml 中:

<servlet-mapping>
    <servlet-name>default</servlet-name>
    <url-pattern>/images/*</url-pattern>
</servlet-mapping>

不幸的是,它不起作用,我收到此错误:

Caused by: com.ibm.ws.exception.RuntimeWarning: SRVE0303E: Servlet name for the servlet mapping /images/* could not be found.

我的应用程序在 WebSphere 上运行,所以我也尝试使用 SimpleFileServlet 作为 servlet-name:

<servlet-mapping>
    <servlet-name>SimpleFileServlet</servlet-name>
    <url-pattern>/images/*</url-pattern>
</servlet-mapping>

仍然导致与上述相同的错误。

感谢任何帮助!


更新

其他 servlet 映射:

<servlet-mapping>
    <servlet-name>QuarzServlet</servlet-name>
    <url-pattern>/QuarzServlet</url-pattern>
</servlet-mapping>
<servlet-mapping>
    <servlet-name>RunJUnitServlet</servlet-name>
    <url-pattern>/RunJUnitServlet</url-pattern>
</servlet-mapping>

当尝试通过 URL 在网络浏览器中打开图像(位于 src/main/webapp/images/)时,它只会加载 Vaadin 应用程序。当我打开使用图像的页面时,Firebug 告诉我找不到图像。

【问题讨论】:

  • 您能向我们展示您所有的 servlet 映射吗?另外,当您尝试访问 src/main/webapp/images 下的图像时,您会看到什么?

标签: java websphere vaadin web.xml servlet-mapping


【解决方案1】:

从您的更新来看,似乎 Vaadin servlet 映射到 /*(或使用 url-pattern 将静态文件的请求映射到 Vaadin servlet)。由于 Vaadin servlet 的映射与请求 URI 匹配,因此 Websphere 将为 Vaadin servlet 提供服务,该服务可能会尝试为静态文件提供服务。请求永远不会通过 Websphere 文件服务机制。您可以验证您的 Vaadin servlet 以查看您是否有如下注释:

@WebServlet(value = "/*")

如果是这种情况,并且您仍希望 Websphere 为静态文件提供服务,则需要修改此映射以更具体,并让对静态文件的请求通过 Websphere 文件服务机制。您可以在此处找到有关如何设置 Vaadin servlet 的更多信息:

https://vaadin.com/wiki/-/wiki/Main/Creating+a+servlet+3.0+application

此外,这个 stackoverflow 问题有一些可能的解决方案:

How to serve static resources from a Vaadin/Spring application?

【讨论】:

    猜你喜欢
    • 2011-02-11
    • 1970-01-01
    • 1970-01-01
    • 2010-12-12
    • 2014-03-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-09-25
    相关资源
    最近更新 更多