XFire AbstractHandlerのinvoke()メソッド内からServletRequestオブジェクトを取得するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/415896

質問

Spring RemotingのWebサービスプロバイダーとしてXFireを使用しています。 AbstractHandlerを使用してSOAPリクエストを認証しています。アイデアは、元のサーバーのドメインとAPIキー(a-la Google Maps)によってリクエストを識別することです。唯一の問題は、MessageContextオブジェクトのみを受け入れるinvoke()メソッド内からServletRequestオブジェクトをフェッチする方法を見つけることができないように見えることです。

考えられる唯一のアイデアは、Filterを使用してThreadLocal変数内に要求オブジェクトを保存することですが、この解決策は避けたいと思います。

アイデアはありますか

乾杯

シャイ

役に立ちましたか?

解決

これはテストしていませんが、XFireのソースは手元にあるので、クラスを掘り下げて、これが簡単かどうかを確認します。 invoke の呼び出し内から、次のコードで ServletRequest を取得できるはずです。

ServletRequest request = (ServletRequest) context.getProperty(org.codehaus.xfire.transport.http.XFireServletController.HTTP_SERVLET_REQUEST);
ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top