質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

1回答

1704閲覧

サーブレットクラスのdoGetメソッドを呼び出すとき処理を変えたい

kit14

総合スコア0

Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2020/06/10 10:44

編集2020/06/10 10:45

前提・実現したいこと

jspファイル内にリンクを2つ作りサーブレットクラスにとばします。
その際、どちらも同じサーブレットクラスのdoGetメソッドを呼ぶのですがリンクによってリンク先を変更させたいと思っています。

簡潔ではありますが、今は下のように書いたところ、ブラウザ上でそれぞれ登録、削除のリンクを押すと404エラーが出てしまいます。
そもそもこのリクエストパラメータから違うのでしょうか。同じサーブレット、doGetメソッドを使用するけど処理内容を変えたい場合、どのようにすればいいのでしょうか。

該当のソースコード

java

1 2 3jspファイル 4 5<a href="/アプリケーション名/サーブレット名?action=touroku">登録</a> 6 7<a href="/アプリケーション名/サーブレット名?action=sakujo">削除</a> 8 9 10 11サーブレット 12doGetメソッド内 13 14request.setCharacterEncoding(文字コード); 15String action = request.getParameter("action"); 16 17if ( action.equals.("touroku")){ 18 RequestDispatcher a = request.get Request Dispatcher("/フォルダ名/Touroku.jsp"); 19 a.forward(request,response); 20 21}else if (action.equals.("sakujo"){ 22 23 RequestDispatcher a = request.get Request Dispatcher("/フォルダ名/Sakujo.jsp"); 24 a.forward(request,response); 25} 26 27 28学び始めたばかりの初心者で、質問すらも曖昧で申し訳ありません。どなたかお答えいただきましたら幸いです。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

違うページにリンクするのであれば通常はリクエストパラメータは使いません。
@WebServlet("/touroku")
という風に別URLを作って別のdoGetにします。

また
action.equals.("touroku")ではなく
action.equals("touroku")です。

さらに言うとリクエストパラメータがnullの時ヌルポになるので、
"touroku".equals(action)とします。

投稿2020/06/10 16:00

編集2020/06/10 16:02
junzi

総合スコア279

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問