0

JSP ページは Jrun で正しく動作していますが、サーブレットを使用すると、そのサーブレットの .class ファイルが見つからず、実行中に 404 エラーが発生します。jrun がサーブレットとどのように連携するかを教えてくれる人はいますか? ポイントを逃していますか?

ここに私のweb.xmlがあります

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5">
  <display-name>myProject</display-name>

      <servlet>
        <description></description>
        <display-name>myClass</display-name>
        <servlet-name>myClass</servlet-name>
        <servlet-class>myPackage.myClass</servlet-class>

      </servlet>
      <servlet-mapping>
        <servlet-name>myClass</servlet-name>
        <url-pattern>/myClass</url-pattern>
      </servlet-mapping>
    </web-app>

そして私の単純なサーブレット

package myPackage;

import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.*;

public class myClass extends HttpServlet {
    private static final long serialVersionUID = 1L;


        protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        // TODO Auto-generated method stub
        PrintWriter pw = response.getWriter();
        pw.println("<html><body>my page</body></html>");
    }

}

およびjspページ

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Insert title here</title>
</head>
<body>
<form action="myClass" method="post">
<input type="submit" value="submit">
</form>
</body>
</html>
4

2 に答える 2

0

確かに、私は JRun を使用したことがありません... WAR を確認する必要があると思います (コードを war またはディレクトリにコンパイルする必要があります。バイナリでコンパイルされたサーブレット ファイルがあるかどうかを検索します (必要な場合) myClass.class である)

于 2012-04-25T06:48:33.850 に答える
0

私は解決策を得ました。DOcTYPE宣言が原因でエラーが発生しました.. web.xmlを

<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<!-- ... -->
<servlet>
<servlet-name>myClass</servlet-name>
<servlet-class>myPackage.myClass</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>myClass</servlet-name>
<url-pattern>/myClass</url-pattern>
</servlet-mapping>
<!-- ... -->
</web-app>
于 2012-04-26T04:37:26.380 に答える