尝试从WEB-INF文件夹加载欢迎文件时,我得到了被请求的资源不可用错误,在我的web.xml中看起来像这样:
<welcome-file-list>
<welcome-file>WEB-INF/html/index.html</welcome-file>
</welcome-file-list>
换句话说,html文件位于名为“html”的文件夹中的WEB-INF目录中......
那我该如何正确地做到这一点?所有这些路径都是如此复杂,我的意思是是否有某种路径引导或任何东西?因为我无法发展,因为当我无法找到某些东西时,我会陷入这些事情,因为我所写的路径的解释与我预期的不同......
答案 0 :(得分:7)
答案 1 :(得分:4)
您无法直接访问WEB-INF文件夹下的文件。 Container将在WEB-INF / classes中查找类,而WEB-INF下的jsp文件可以包含在其他JSP中,但任何请求资源的浏览器都会得到404响应。
编辑:关于您的疑问,如果您有一个标准的Java EE Web应用程序,请在根文件夹下面:
/-
|
|-META-INF/
|-WEB-INF/
|-custom1/
|-custom2/
前两个是必需的,但您可以创建额外的子文件夹(例如customX)。我个人创建一个自定义文件夹“资源”来分配html,css和js文件(在单独的子文件夹中)。如果我有特殊的JSP文件,不应该直接加入(只包括),我将它们放在WEB-INF /中。
答案 2 :(得分:0)
WEB-INF文件夹不能直接访问Web浏览器,因为此文件夹用于保存应用程序内部的文件,即类和配置文件等。欢迎页面不应包含任何特定或私人信息,因此可以与WEB-INF文件夹并行保存。所有静态html文件都可以放在与欢迎文件相同的层次结构中。为了更好地区分,我们可以创建子文件夹。
答案 3 :(得分:-2)
我要告诉你我如何获得wellcome文件,我喜欢这个
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
并且“index”位于“web”文件夹中,也许您应该只使用名称设置wellcome文件。
我希望这个可以帮助你;)