Eclipse - 如何在没有web.xml文件的情况下发布非Java资源?

时间:2014-10-28 06:07:34

标签: java javascript eclipse tomcat

我的WebApp使用Java注释将URL映射到servlet(@WebServlet),而我没有 web.xml 文件。我想把请求发送到另一个HTML文件,我这样做了:

  

request.getRequestDispatcher(“/ WEB-INF / test / testpage.html”)。forward(request,response);

它可以工作,但我无法从服务器获得额外的资源(javascript)。

  

< script type =“text / javascript”src =“testsuite.js”>< / script>

testsuite.js位于/WEB-INF/test/testsuite.js,与testpage.html相同的文件夹。在请求testsuite.js时,我得到404.如何在没有web.xml的情况下配置Tomcat来提供工作树中的所有资源?最糟糕的情况我会简单地嵌入JS。

另外我让eclipse在我的本地机器上安装Web服务器,所以我不知道它们是如何部署的。

1 个答案:

答案 0 :(得分:0)

您必须将资源移到WEB-INF文件夹之外。它是编译的Java代码,jar,配置文件等的特殊文件夹。

出于安全原因,WEB-INF文件夹在应用程序服务器和servlet容器中受到限制,因此例如,/appname/WEB-INF/web.xml的请求当然会被定义。

*.html文件,*.css文件,*.js文件,图片等静态资源应放在WEB-INF文件夹之外,在您的情况下{{1}应该在test旁边向上移动文件夹。