
初歩的な質問で失礼します。
サーブレットAに doGet, doPost, serviceメソッドを実装しています。
サーブレットBのdoPostメソッド内にて
サーブレットAにforwardを実行する場合に、
呼出されるのはサーブレットAのどのメソッドですか?
JSPへのforwardはできたのですが、
サーブレットへのforwardができず悩んでいます。
サーブレットのAPIを読んでもいまいちわかりません。
何かメソッドに関する制約があるのでしょうか?
上の質問は全くマト外れでしょうか?
追加ですが・・・
サーブレットからforwardされたサーブレットで、
そこからさらにJSPへforwardすることはできますか?
Apache2.0.43+tomcat4.1.12+Java1.4.0_01です。
No.1ベストアンサー
- 回答日時:
> サーブレットBのdoPostメソッド内にて
> サーブレットAにforwardを実行する場合に、
> 呼出されるのはサーブレットAのどのメソッドですか?
doPost() のはず。実際には、forward するときの HttpServletRequest#getMethod() で取得できる文字列に従うはず。
> JSPへのforwardはできたのですが、
> サーブレットへのforwardができず悩んでいます。
forward に関して、servlet と JSP の違いはないはず(というか、JSP は自動コンパイルされる servlet だし)。
getRequestDispatcher() してるパスが間違っているのだと思います。
> サーブレットからforwardされたサーブレットで、
> そこからさらにJSPへforwardすることはできますか?
コンテナの実装次第だけど、forward() は、サブルーチン呼び出しと変わらないはずなので、
回数に制限はないはず。
この回答への補足
「doPostからforwardすればdoPost」というのは、
厳密には間違いであって、正しくは
「getMethod()で取得した結果からdoPost」ですね。。
了解しました。大変解りやすく、ありがとうございます。
ありがとうございました。
できました。
serviceを作っことが原因で
doPostが無視されていたことが動かない原因でした。
No.2
- 回答日時:
サーブレットAは HttpServlet を拡張しているのだと思いますが、
service メソッドはオーバーライドしては駄目です。
HttpServlet の service メソッド内で、処理を doGet や doPost に
委譲するようになってますので、これをオーバーライドしてしまうと、
doGet も doPost も実行されなくなります。
ひょっとしたら、そのせいでサーブレットが実行されてないと
勘違いしているのかもしれません。
なんの設定もせずに forward した場合、doGet が呼ばれます。
また、forward の回数には制限はありません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
エクセルVBAで、条件に一致する...
-
エクセルVBAにおけるON TIMEメ...
-
VBPをダブルクリックするとたま...
-
javascriptからjavaを呼び出したい
-
CALLされていないメソッドを見...
-
サーブレット GETからPOST送信
-
エクセルのマクロでプリンタを...
-
DataGridViewでセルクリックイ...
-
ODBCでMoveNextがうまく動作し...
-
VBAでSaveAs使用し、指定してい...
-
PDFファイルから別ウィンドウで...
-
Labelコントロールに数字を代入...
-
0歳児の指しゃぶりに関して
-
JAVA コンパイル時のエラー
-
Containsメソッドについて
-
実行時引数をrun()メソッドに渡...
-
execute()
-
オーバーロードの「あいまい」...
-
Lightboxのグループをループさ...
-
モードレスフォームが開かない
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
エクセルVBAで、条件に一致する...
-
JSPで<SELECT>の中にDBから持っ...
-
javascriptからjavaを呼び出したい
-
DataGridViewでセルクリックイ...
-
配列のメソッド
-
final修飾子を使っているのに、...
-
VBPをダブルクリックするとたま...
-
boolean型のフィールドとゲッタ...
-
エクセルVBAにおけるON TIMEメ...
-
0歳児の指しゃぶりに関して
-
mainメソッドのthrows節で設定...
-
VBA コピーが出来ません…!
-
CALLされていないメソッドを見...
-
PDFファイルから別ウィンドウで...
-
eclipse-Tomcatでのデバッグに...
-
【sendkeysメソッドが動かずに...
-
コマンドプロンプト実行後に画...
-
ウィンドウを最前面にできません
-
Labelコントロールに数字を代入...
-
エラーの意味を
おすすめ情報