dポイントプレゼントキャンペーン実施中!

はじめまして。Javaの初心者です。
どうしてもわからないことがあります。それは、
最初にTest.jspを実行して送信ボタンを押すと、
サーブレットからforwardされてきた「あああああ」
が表示されるのですが、再び送信ボタンを押すと、
「HTTPステータス 404 - /servlet/Test」が表示
されます。なぜなのでしょうか?また、どのようにす
れば、404エラーを出すことがなく実行できるのが
どうか教えてください。お願いします。

*************************************************
<%-- Test.jsp --%>
<%@ page contentType="text/html; charset=Shift_JIS" %>
<html>
<head>
<title>Test</title>
</head>
<body>

<form method="POST" action="/servlet/Test">
<input type="submit" name="submit" value="送信"/><br/>
</form>

<% if(request.getParameter("submit") != null)
{ %>
<hr/>
<%= (String)request.getAttribute("b") %>
<% } %>
</body>
</html>
*************************************************
import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.*;

public final class Test extends HttpServlet
{
public void doPost
(
HttpServletRequest request,
HttpServletResponse response
)
throws IOException,ServletException
{
request.setAttribute("b","あああああ");

ServletContext sc = this.getServletContext();
RequestDispatcher rd
= sc.getRequestDispatcher("/Test.jsp");
rd.forward(request,response);
}
}
*************************************************

A 回答 (2件)

問題ないみたいです。


当方の環境
C:\PracticeA
   ├\example\Test.jsp
   └\WEB-INF\classes\Test.class

action="/servlet/Test"
→action="/practiceA/Test"
sc.getRequestDispatcher("/Test.jsp");
→sc.getRequestDispatcher("/example/Test.jsp");

web.xml
<servlet>
<servlet-name>Test</servlet-name>
<servlet-class>Test</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Test</servlet-name>
<url-pattern>/Test</url-pattern>
</servlet-mapping>
    • good
    • 0
この回答へのお礼

fortranxp様へ
連絡が遅くなりまして、申し訳ございませんでした。
HTMLフォームの<form>タグのaction属性を絶対URL
に変更したところ、404エラーは、表示されなくなりました。ありがとうございます。助かりました。
勉強不足を痛感しています。

お礼日時:2006/06/29 20:44

>最初にTest.jspを実行して


この時指定したURLは何でしょうか?
web.xmlの<servlet-mapping>はどうなっているでしょうか?formタグのactionで指定しているURL(/servlet/Test)は定義されていますか?
    • good
    • 0
この回答へのお礼

nin2-y様へ
連絡が遅くなりまして、申し訳ございませんでした。
HTMLフォームの<form>タグのaction属性を絶対URL
に変更したところ、404エラーは、表示されなくなりました。ありがとうございます。助かりました。
勉強不足を痛感しています。

お礼日時:2006/06/29 20:45

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