
フォームを設定したlogin.htmlから情報を受け取るlogin.jspで検証をして、間違ったid番号を入力した場合はerror.jspに移動させたいのですが、遷移せず、「HTTP 500 - 内部サーバー エラー」となります。
改善のご教示お願い致します。
[login.html]
<html><head><title>login.html</title></head>
<body><h1>ログイン</h1><hr><br>
<form method="post" action="/webapp/JSPtest/login.jsp">
<table>
<tr>
<td>ID:</td>
<td><input type="text" name="id"></td>
</tr>
</table>
<br><br>
<input type="submit" value="送信">
<input type="reset" value="キャンセル">
</form>
</body>
</html>
[login.jsp]
<%@ page contentType="text/html;charset=Shift_JIS" pageEncoding="Shift_JIS" %>
<%@ page errorPage="error.jsp" %>
<html><head><title>login.jsp</title></head>
<body>
<%
String id = "2007";
String data = request.getParameter("id");
StringBuffer temp = new StringBuffer();
if(!id.equals(data))
temp.append("数値間違い<BR>");
if(temp.length() != 0){
throw new Exception(temp.toString());
}
%>
<h1>こんにちは<%= data %>様</h1>
<h1><%= temp.length() %> </h1>
</body></html>
[error.jsp]
<%@page contentType="text/html;charset=Shift_JIS" pageEncoding="Shift_JIS" %>
<%@ page isErrorPage="true" %>
<html><head><title>error.jsp</title></head>
<body>
エラーメッセージ<br>
<%= exception.getMessage() %>
</body></html>
A 回答 (4件)
- 最新から表示
- 回答順に表示

No.3
- 回答日時:
error.jspがどこに配置されてるか分かりませんが、パスを正しく設定して、web.xmlに以下のタグを追加して下さい。
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>error.jsp</location>
</error-page>
参考URL:http://www.geocities.jp/newtype_shira/java/tomca …
早速の回答ありがとうございました。参考ページ等も拝見して、調べてみました。
現在、当方は
webapp------WEB-INF/src
|
|-----work
|-----JSPtest
| |---error.jsp
| |---login.html
| |---login.jsp
|
|---WEB-INF
|---lib
という構造になっています。ご指摘に従って、次の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>
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>error.jsp</location>
</error-page>
</web-app>
をWEB-INFの配下においたところ、login.html、login.jspも動かなくなりました。(HTTPステータス 404)
勉強不足で申し訳ないのですが、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>Hello</servlet-name>
<servlet-class>JSPtest.HelloWorldServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>Hello</servlet-name>
<url-pattern>/hello</url-pattern>
</servlet-mapping>
</web-app>
という形は理解しているのですが、JSPとweb.xmlの関係がよくわかりません。通常のエラー(NULLとか、/ZERO)を返すプログラムは問題なく動作するのですが、自分で設定したメッセージを返したいと思います。
そのあたりのご教授お願いいたします。
No.1
- 回答日時:
><%@ page errorPage="error.jsp" %>
これを
<%@ page errorPage="/error.jsp" %>
にしてみては。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
webアプリを作ってます。エラー...
-
servletからjspへの遷移時に文...
-
ファイルが更新されない
-
jspでformのvalueを取得。
-
Windowsで作成したJSPがLinuxサ...
-
jspファイルの表示チェックする...
-
JSP、Servlet、設計について
-
ログアウト後、リフレッシュしたい
-
ServletとJSPで。。。
-
JSPが表示できない
-
Struts:フレーム内JSPからcssフ...
-
JSPからJSPへ情報を渡せる?
-
javascriptでセッションの削除...
-
このadidasの腕時計の時刻の設...
-
Formのデータが欠落することがある
-
JSPでsession変数が勝手に書き...
-
javascriptでセッションを取得
-
グローバルIPアドレスの変更タ...
-
フォーム上で押されたボタンに...
-
DVD鑑賞時、字幕を消すには??...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
jspからServletを呼び、元のjsp...
-
webアプリを作ってます。エラー...
-
JSPからJSPへ情報を渡せる?
-
jspでbeanを使いたいのです...
-
jsp:paramアクションタグで配列...
-
javascriptでformの送信後、値...
-
Java サーブレット間の値の受渡...
-
JSPが表示できない
-
WEB-INF直下のフォルダ
-
session,requestはjspで未定義...
-
Seaser2のフォルダ構成について
-
struts2 jspファイル直接参照禁...
-
JSPのエラー画面(error.jsp)に...
-
JSPの値により遷移先を変更する
-
Struts:フレーム内JSPからcssフ...
-
JSPの変数受け渡しについて教え...
-
Servlet-JSP間のhidden要素での...
-
jspのクラスのコンパイルエラー
-
1つのフォーム内容を1つのsubmi...
-
検索後のページ再表示初期化
おすすめ情報