はじめまして。Javaの初心者です。
どうしてもわからないことがあります。それは、
最初にJSPページでHTMLフォームにデータを入力して
<input type="submit"/>タグでサーブレットに送信し
て、サーブレットでHTMLフォームのデータ
を使用して処理を行わせてから再び最初のJSPページ
にリクエストを転送(forward)すると、サーブレット
での処理結果が表示されるのですが、そのあと再び
HTMLフォームにデータを入力して
<input type="submit"/>タグでサーブレットに送信す
ると、「HTTPステータス 404 -/servlet/Test」などと
表示され、サーブレットが利用可能でなくなります。
なぜなのでしょうか?どのようにしたら解決できるの
かどうか教えてください。お願いします。
No.2ベストアンサー
- 回答日時:
HTMLフォームからサーブレットにアクセスするには、URLを全て書くと、
http://ホスト名/アプリケーション名/サーブレット名
って感じでURLを指定しますね。(本当はポート番号とかもあるけど省略)
エラー内容で、"/servlet/Test"と出ているので、アプリケーション名の部分が指定されていないのではないでしょうか?
JSPから forward したときは、アプリケーションの内部での指定だったので、/servlet/Test でサーブレットに転送できたのだと思います。
HTMLのフォームから送信するときは、アプリケーション名も含めて、URLを
/アプリケーション名/servlet/Test
とするか、HTMLからの相対パスで指定すればいいと思います。
HTMLがアプリケーションのルートにあるのなら、
servet/Test
でアクセスできると思います。
liwet様へ
連絡が遅くなりまして、申し訳ございませんでした。
HTMLフォームの<form>タグのaction属性を絶対URL
に変更したところ、404エラーは、表示されなくなりました。ありがとうございます。助かりました。
勉強不足を痛感しています。
No.1
- 回答日時:
formに記述しているactionのURLは相対URLでしょうか。
もし、相対URLだとしたら絶対URLに変えてみても同様の現象は起こるでしょうか。もし、絶対URLに変更して現象が発生しなくなったとしたら、formに記述したactionのURLを確認しなおしてみてはいかがでしょうか。
counter_class様へ
連絡が遅くなりまして、申し訳ございませんでした。
HTMLフォームの<form>タグのaction属性を絶対URL
に変更したところ、404エラーは、表示されなくなりました。ありがとうございます。助かりました。
勉強不足を痛感しています。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript ①入力フォーム→②確認表示画面→③送信完了画面のコードを書いているのです、 入力フォームから受け取っ 2 2022/05/10 16:45
- JavaScript sessionStorageを調べています。 1 2023/06/20 12:41
- JavaScript 入力フォームの javascript で メールアドレスの正規チェックをを行い、ボタンをクリックして 2 2022/04/27 16:06
- PHP PHPで入力フォームでデータを確認表示画面まで送る流れを日本語で理解したいのです。 1 2023/05/29 19:12
- JavaScript Javascript初心者|jQueryの.val()で値を取得し複数の要素を連結させる方法知りたい 2 2022/06/02 12:06
- Java 問題作成のWebアプリの作り方を教えてください 1 2022/11/26 22:01
- HTML・CSS ボタンをクリックした時に、入力フォームのすぐ下部に、「入力欄が空白です」というテキストメッセージが表 1 2022/04/27 16:25
- PHP htmlspecialcharsが機能していないです。 バグですか? 1 2022/04/05 01:22
- HTML・CSS 私の能力からして間違っていないような気がします。 4 2022/09/30 13:24
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
IISワーカープロセスが原因でCP...
-
GDIはいつ使われていますか?
-
ASP(VB).NETでの背景色変更
-
[VB.2005]クライアントからWEB...
-
32ビットのアプリで、64ビットO...
-
Delphiでヘルプメニューを右端に
-
C#のメモリマップドファイルに...
-
unzip32.dllの利用について(64b...
-
JavaアプリケーションからHTML...
-
Java でネイティブアプリケーシ...
-
JavaとObjective-c間でJNIエラー
-
SurfaceViewの一時停止や再開方法
-
RTT計測
-
プラグインとパッチの違いは?
-
HTMLアプリケーションの作成
-
VBAの「for i=1 to cells(…」...
-
データベースのデータをTextBox...
-
Javaでのエラーについて
-
使用しているJUnitのバージョン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
vba クリップボードクリアにつ...
-
VBのWPFとはなんでしょうか?
-
IISワーカープロセスが原因でCP...
-
unzip32.dllの利用について(64b...
-
プラグインとパッチの違いは?
-
帳票出力について
-
このVBAでExcelアプリケーショ...
-
32ビットのアプリで、64ビットO...
-
C#のメモリマップドファイルに...
-
ログオフ中でもアプリケーショ...
-
C++からC#へ
-
意味が分からないエラー
-
予約システムの開発ツール
-
HTMLアプリケーションの作成
-
JAVAプログラムをWEB表示させる...
-
java3dが動かない
-
外部アプリケーションの呼び出し方
-
AccessとVBの違いについて
-
Javaアプレットで作成したレー...
-
SurfaceViewの一時停止や再開方法
おすすめ情報