在java中显示来自WEB-INF的html页面

时间:2015-05-07 14:29:02

标签: java html

我是java网络的初学者。我试图解决这个问题,但它不起作用。请给我一个完整的解决方案。我需要添加或更改以从WEB-INF显示html页面(在本例中为search.html)。

enter image description here

这是我的servlet代码和login.js

@WebServlet(" /调度程序&#34)

public class DispatcherServlet扩展了HttpServlet {

STOR

5 个答案:

答案 0 :(得分:0)

而不是我们可以将JSP和HTML文件放在一个与WEB-INF平行的单独文件夹中...... WEB-INF是私有文件夹..如果我没有错...也将Servlet放在WEB-INF \ classes中并且他们需要对每个修改进行编译,因为容器会自动识别JSp和HTML文件修改

答案 1 :(得分:0)

将扩展名更改为jsp,将其移至WebContent并在开头添加用户登录的验证(您可以在HttpSession中添加该内容)。如果没有将他重定向到登录页面......

答案 2 :(得分:0)

根据您的评论,您希望首先将用户重定向到登录页面。为此,我们可以选择将html文件作为web.xml(部署描述符)中的欢迎文件

见下文

{{1}}

认证正确后,我们应该使用sendRedirect将它们放入search.html文件中。

答案 3 :(得分:0)

这是not possible by specification page 70

  

WEB-INF节点不属于公众   应用程序的文档树。 WEB-INF目录中不包含任何文件   由容器直接提供给客户。

通过servlet-3.0可以在WEB-INF/classes/resources/中提供文件,但我认为这是不好的做法。

抱歉

答案 4 :(得分:0)

尝试添加SearchServlet

@WebServlet("/search")
public class SearchServlet extends HttpServlet {
   protected void doGet(HttpServletRequest request,
        HttpServletResponse response) throws ServletException, IOException{

        request.getRequestDispatcher("/WEB-INF/search.html").forward(request, response);
   }
}

在DispatcherServlet中,如果登录成功,请通过调用response.sendRedirect("/search")将用户重定向到搜索servlet