プロが教えるわが家の防犯対策術!

現在、tomcatとeclipseでサーブレット/JSPの勉強をしています。

参考書に載っている、jspの入力画面で入力した値をサーブレットで受け取り、そのまま表示させるようなサンプルを作成しています。
JSPの入力画面は表示できるのですが、値を入力してサーブレットに移動する際、404エラーが出てしまいます。

■eclipseのパッケージエクスプローラー
basic
|-WEB=INF/src
|..|input
|...|EchoServlet.java
|-WEB-INF
|..|web.xml
|.|echo.jsp (WEB-INF直下に作成)

■echo.jsp内のサーブレットのパスに関する記述
<FORM ACTION="/servlet/EchoServlet">

■web.xmlの記述
<servlet>
<servlet-name>EchoServlet</servlet-name>
<servlet-class>input.EchoServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>EchoServlet</servlet-name>
<url-pattern>/servlet/EchoServlet</url-pattern>
</servlet-mapping>

■EchoServlet.javaの記述
package input;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class EchoServlet extends HttpServlet {
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {

String msg = request.getParameter("message");

response.setContentType("text/plain; charset=Windows-31J");
PrintWriter out = response.getWriter();
out.println("message=" + msg);
}

}

お気づきの点がございましたらご査収の程よろしくお願いいたします。

A 回答 (1件)

EchoServlet.classのことが書いてありませんけど


WEB-INF/classes/input/EchoServlet.class
はありますよね?
    • good
    • 0
この回答へのお礼

ありがとうございます。
■echo.jsp内のサーブレットのパスに関する記述
<FORM ACTION="/basic/EchoServlet">

■web.xmlの記述
<servlet>
<servlet-name>EchoServlet</servlet-name>
<servlet-class>input.EchoServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>EchoServlet</servlet-name>
<url-pattern>/EchoServlet</url-pattern>
</servlet-mapping>

と修正したらJSPからサーブレットを呼び出せました。

協力していただいてありがとうございました。

お礼日時:2008/08/18 21:03

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!