不能在servlet中包含jsp

时间:2012-11-20 21:13:57

标签: java jsp web

我需要在我的servlet中包含.jsp文件。

我编写了简单的jsp文件,我把它放在了dir WEB-INF / jsps /中:

<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="ISO-8859-1"%>
<html>
<head>
<title> Galleries </title>
</head>

<body>
Test
</body>
</html>

和servlet:

package photoGallery;

import javax.servlet.RequestDispatcher;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

@SuppressWarnings("serial")
public class GalleriesServlet extends HttpServlet {

    public void doGet(HttpServletRequest request, HttpServletResponse response)
    {
        try 
        {
            System.out.println("Test");
            //get the request dispatcher
            RequestDispatcher dispatcher = request.getRequestDispatcher("/WEB-INF/jsps/galleries.jsp");
            //forward to the jsp file
            if (dispatcher != null)
                dispatcher.forward(request, response);
            else 
                System.err.println("Error: dispathcer is null");        
        } 
        catch (Exception e) {
            e.printStackTrace();
        }
    }
}
web.xml中的

我添加了下一行:

  <servlet>
    <display-name>Gallery Servlet</display-name>
    <servlet-name>GalleryServlet</servlet-name>
    <servlet-class>photoGallery.GalleriesServlet</servlet-class>
  </servlet>
  <servlet-mapping>
    <servlet-name>GalleryServlet</servlet-name>
    <url-pattern>/galleries/*</url-pattern>
  </servlet-mapping>

当我打开页面时

http://localhost:8080/PhotoGallery/galleries

然后在控制台中打印“测试”,但在浏览器中我看到“HTTP状态404 - 未找到”

我犯了错误?

1 个答案:

答案 0 :(得分:0)

我发现了自己的错误。 还有其他servlet映射到“/ *”,因此出现了错误

相关问题