【问题标题】:Struts2 does not find HTML filesStruts2 找不到 HTML 文件
【发布时间】:2018-03-26 11:25:40
【问题描述】:

我正在使用带有约定插件的 Struts2。我知道如何让它找到无动作的 JSP 文件,但我似乎无法让它显示无动作的 HTML 文件。我有一整套由 javadoc 生成的 HTML 文件,我想在我的 WAR 文件中显示这些文件(这是实际应用程序的文档 WAR)。

我将所有的 HTML 文件放在 WEB-INF/content 下。当我从链接中删除 .html 时,会找到该文件,但我不会为数百个 javadoc 文件这样做。

如何让它显示 index.html、overview-summary.html 等?

【问题讨论】:

  • 这些文件在哪里? 404,您尝试访问它们有什么用?
  • 你不应该做任何事情:“结果类型基于文件的扩展名。支持的扩展名是:jsp,ftl,vm,html,html。”(原文如此)@ 987654321@ 如果它是公共 javadoc,您也可以将其移动到可公开访问的位置。注意:似乎他们写了两次html,当然应该是htm和html。
  • 但是两者没有相同的约定,javadoc使用CamelCase名称和约定喜欢“-”。其他人可以进行实验……您尝试了什么,结果如何?
  • 我在上面提供了更多信息。

标签: java html jsp struts2 struts2-convention-plugin


【解决方案1】:

如果您确实需要通过操作访问这些文件,那么您需要将html 设置为操作扩展名。使用struts.action.extension 常量来做到这一点。

<constant name="struts.action.extension" value="action,html,htm,,"/>

但是,如果这些文件是静态资源,为什么您首先要通过操作来访问它们?将它们从WEB-INF 中取出并直接访问它们。

【讨论】:

  • 所以更好的做法是将这些文件放在顶层而不是 WEB-INF/content 下?约定插件不管理任何不在WEB-INF/content下的文件?
  • web-inf下的文件不能直接访问,S2约定插件无关。
猜你喜欢
  • 2017-08-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-09-02
相关资源
最近更新 更多