- ベストアンサー
別のサーバにリクエストを飛ばしたい
質問させてください。 サーブレットのプログラミングをしています。 別のサーバのサーブレット(***.do)にリクエストを送りたい場合は、どのようにすればよいのでしょうか。 forward()やinclude()を使用すれば実現できると思っていたのですが、これらは同じサーバのものにしか適用できないようなので・・・。 どなたかご存知でしたらお教えください。 よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
その他の回答 (3)
- 中村 拓男(@tknakamuri)
- ベストアンサー率35% (674/1896)
質問とずれているかもしれませんが、 単にサーブレット内で別の HTTP サーバにアクセスしたいのなら URL url = new URL(URLの文字列); HttpURLConnection httpCon = (HttpURLConnection) url.openConnection(); httpCon.setRequestMethod("GET"); InputStream is = httpCon.getInputStream(); 処理! なんてダイレクトなやり方があります。
補足
ありがとうございます。 こちらの説明が不足していました。 responseやrequestも一緒に転送させたいのです。
質問に記載されたとおりに、サーブレットであれば、 「res.sendRedirect("遷移先のURL");」 ※resは「HttpServletResponse」の変数名なので、自分のプログラムで定義した変数名にして下さい。 HTMLであれば、locationだったり、メタタグで定義する方法があります。 また、自分自身のプログラムがサーブレットでは無く、Strutsの場合は、StrutsタグやStrutsのAPIで 実装した方が良いと思います。
補足
ありがとうございます。 この方法、requestやresponseも同時に送られますでしょうか。 こちらで試してみたところ、上手くいかなかったので・・・。
- mintia007
- ベストアンサー率59% (16/27)
HttpServletRequest#sendRedirect( String location ); location = "http://www.google.co.jp"; とかで飛ばせますよ。
補足
ありがとうございます。 この方法、requestやresponseも同時に送られますでしょうか。 こちらで試してみたところ、上手くいかなかったので・・・。
お礼
ありがとうございます。 この方法ならなんとか実現できそうです。