tomcat - 使用 Struts2 提供静态内容 : Tomcat error 404

标签 tomcat static struts2 web-applications

对于 Struts2,我找不到提供静态 CSS 的方法:-/新手问题,但我在 Internet 上找不到任何答案:

CSS 文件是我的 WAR 文件中的 static/styles.css

当我请求 http://server/myapp/static/styles.css

时,Tomcat 回复 404

但如果我将 styles.css 放在 WAR 的根目录并请求 http://server/myapp/styles.css

我尝试在唯一的包中将以下内容添加到我的 struts.xml 但仍然是 404:

<action name="/static/*">
  <result>/static/{1}</result>
</action>

或者作为第二个包:

<package name="static" extends="struts-default" namespace="/static">
  <action name="/static/*">
    <result>/static/{1}</result>
  </action>
</package>

最佳答案

这是一个非常古老的问题,但由于它没有得到解答,而且我也在为同样的问题而苦苦挣扎,我相信其他人可能会从解决方案中受益。

Struts 默认只提供来自 JAR 的静态内容,而不是来自 JAR 之外的子目录。所以你需要将它添加到你的 struts.xml 中:

<constant name="struts.action.excludePattern" value=".*/static/.*" />

这可以防止将“静态”文件夹中的任何内容作为操作处理。

关于tomcat - 使用 Struts2 提供静态内容 : Tomcat error 404,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2956277/

相关文章:

java - 如何优雅地关闭 docker 容器中 tomcat 中的 servelts?

java - 如何在1个web.xml中定义2个servlet

session - 没有 Cookie 的 GWT + Tomcat session !

ForEach 中的 c# 静态成员

class - 类成员函数代码内存是分配一次还是在对象的每次实例化时分配?

java - 许多 Tomcat 线程正在 hibernate - org.apache.catalina.connector.CoyoteAdapter.postParseRequest

c - 使用 -l 标志链接静态库

java - Struts2 + 验证 + 正则表达式

java - Struts2 - OGNL 参数化名称

java - 了解简单 CRUD 网站中对 struts 2 和公共(public)链的需求