• ベストアンサー

別のサーバにリクエストを飛ばしたい

質問させてください。 サーブレットのプログラミングをしています。 別のサーバのサーブレット(***.do)にリクエストを送りたい場合は、どのようにすればよいのでしょうか。 forward()やinclude()を使用すれば実現できると思っていたのですが、これらは同じサーバのものにしか適用できないようなので・・・。 どなたかご存知でしたらお教えください。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • mintia007
  • ベストアンサー率59% (16/27)
回答No.1
参考URL:
http://www.atmarkit.co.jp/bbs/phpBB/viewtopic.php?topic=13252&forum=12
ryu-e
質問者

お礼

ありがとうございます。 この方法ならなんとか実現できそうです。

その他の回答 (3)

回答No.4

質問とずれているかもしれませんが、 単にサーブレット内で別の HTTP サーバにアクセスしたいのなら URL url = new URL(URLの文字列); HttpURLConnection httpCon = (HttpURLConnection) url.openConnection(); httpCon.setRequestMethod("GET"); InputStream is = httpCon.getInputStream(); 処理! なんてダイレクトなやり方があります。

ryu-e
質問者

補足

ありがとうございます。 こちらの説明が不足していました。 responseやrequestも一緒に転送させたいのです。

noname#146324
noname#146324
回答No.3

質問に記載されたとおりに、サーブレットであれば、 「res.sendRedirect("遷移先のURL");」 ※resは「HttpServletResponse」の変数名なので、自分のプログラムで定義した変数名にして下さい。 HTMLであれば、locationだったり、メタタグで定義する方法があります。 また、自分自身のプログラムがサーブレットでは無く、Strutsの場合は、StrutsタグやStrutsのAPIで 実装した方が良いと思います。

ryu-e
質問者

補足

ありがとうございます。 この方法、requestやresponseも同時に送られますでしょうか。 こちらで試してみたところ、上手くいかなかったので・・・。

  • mintia007
  • ベストアンサー率59% (16/27)
回答No.2

HttpServletRequest#sendRedirect( String location ); location = "http://www.google.co.jp"; とかで飛ばせますよ。

ryu-e
質問者

補足

ありがとうございます。 この方法、requestやresponseも同時に送られますでしょうか。 こちらで試してみたところ、上手くいかなかったので・・・。

関連するQ&A