3

我在尝试从 WEB-INF 文件夹加载欢迎文件时收到 resquested resource is not available 错误,在我的 web.xml 中它看起来像这样:

<welcome-file-list>
    <welcome-file>WEB-INF/html/index.html</welcome-file>
</welcome-file-list>

换句话说,html文件位于名为“html”的文件夹中的WEB-INF目录中......

那么我该如何正确地做到这一点呢?所有这些路径都太复杂了,我的意思是有某种路径指南或任何东西吗?因为我无法发展,因为当找不到某些东西时我会陷入这些事情,因为我写的路径的解释与我预期的不同......

4

4 回答 4

7

WEB-INF 目录中的文件不能直接访问。

网址

将私有文件放在根目录下的 WEB-INF 目录中。WEB-INF 下的所有文件都是私有的,不提供给客户端。

于 2013-04-23T22:20:59.323 回答
4

您不能直接访问 WEB-INF 文件夹下的文件。容器会在 WEB-INF/classes 中查找类,WEB-INF 下的 jsp 文件可以被其他 JSP 包含,但是任何浏览器在下面请求资源都会得到 404 响应。

编辑:关于你的疑问,如果你有一个标准的 Java EE webapp,你应该在根文件夹下面:

/-
 |
 |-META-INF/
 |-WEB-INF/
 |-custom1/
 |-custom2/

前两个是强制性的,但您可以创建额外的子文件夹(例如 customX)。我个人创建了一个自定义文件夹“资源”来分配 html、css 和 js 文件(在单独的子文件夹中)。如果我有不应该直接访问的特殊 JSP 文件(仅通过包含),我将它们放在 WEB-INF/.

于 2013-04-23T22:23:36.160 回答
0

Web 浏览器无法直接访问 WEB-INF 文件夹,因为该文件夹用于保存应用程序内部的文件,即类和配置文件等。欢迎页面不应包含任何特定或私人信息,因此可以保存在与 WEB-INF 文件夹平行。所有静态 html 文件都可以放置在与欢迎文件相同的层次结构中。为了更好地区分,我们可以创建子文件夹。

于 2014-03-15T14:40:23.367 回答
-2

我要告诉你我是如何拥有 Wellcome 文件的,我拥有这样的文件

<welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
</welcome-file-list>

并且“索引”在“web”文件夹中,也许您应该只使用名称设置wellcome文件。

我希望这个对你有帮助;)

于 2013-04-23T22:19:03.627 回答