0

サーブレットに .jsp ファイルを含める必要があります。

簡単なjspファイルを書きました。これを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>

およびサーブレット:

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 - 見つかりません」と表示されます。

私はどこで間違いを犯しましたか?

4

1 に答える 1

0

私は間違いを見つけました。「/*」にマップされた他のサーブレットがあり、そのためにエラーが表示されました

于 2012-11-20T23:33:33.063 に答える