我有一个名为Report
的动态Web项目,它利用Eclipse使用的默认生成策略。我在hello.jsp
目录下添加了一个页面WEB-INF
,并部署了J2EE预览服务器。当页面在我的浏览器中启动时,我将被引导到以下URL:
http://localhost:8080/Report
此页面有两个超链接:
META-INF
WEB-INF
两者的大小为零(0)字节。我的问题是为什么我无法访问/Report/hello.jsp
?它导致找不到类似的/Report/WEB-INF/hello.jsp
也导致未找到异常。
答案 0 :(得分:2)
/WEB-INF
和/META-INF
文件夹中的文件用于MVC视图文件,模板文件,包含文件,标记文件,配置文件等,不适用于有意直接访问的公共Web资源通过网址。
将hello.jsp
放在/WEB-INF
个文件夹之外,然后通过/Report/hello.jsp
访问该文件夹。
WebContent
|-- META-INF
|-- WEB-INF
| `-- web.xml
`-- hello.jsp
如果你真的需要在/WEB-INF
文件夹中使用你的JSP(为了充当MVC视图),那么你需要创建一个由RequestDispatcher#forward()
提供服务的前端控制器servlet。有关启动示例,请参阅also our servlets wiki page。