在我的 Vaadin 项目中,我希望能够直接将图像作为静态资源访问。当我将图像放在 src/main/webapp/VAADIN/themes/... 下面时,它可以工作。如果图像位于 src/main/webapp/images 中,我该怎么做才能访问它们?到目前为止,我已经看到我可以将这个 servlet 映射放在我的 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 告诉我找不到图像。