[Seasar-user:2469] Re: S2OpenAMFとServlet の通信について

Kazuyuki Ikeda ike
2005年 7月 31日 (日) 19:05:28 JST


ほそかわ様

  池田です。

  ご連絡ありがとうございます。

On Sun, 31 Jul 2005 18:45:17 +0900
Hidetoshi Hosokawa <[E-MAIL ADDRESS DELETED]> wrote:

> ほそかわです。
> 
> > $TOMCAT_HOME/webapps/test/WEB-INF/classes 配下に jp.co.test.TestServlet とというサーブレットを
> > 配置し、/testServiceという名称でマッピングしてます。 
> > 
> > ここで、service メソッドを呼び出したい場合に、swf 側ではどういったコードを
> > 書いたらよろしいでしょうか?
> 
> OpenAMFでは直接Servletを呼び出す機能は持っていないと思います。
> OpenAMFで呼び出せるのはServletではなく、POJOとなります。
> S2OpenAMFはSeasarに登録されているコンポーネントも直接呼び出せます。

  なるほど、Flash Remoting と等価と勝手に想定してました。
POJO経由でサーブレットを呼び出す方が早そうですね。

> > function login() {
> > 	var getTestService:Service = new Service("https://targethost/test/gateway", new Log(), "test", null, null);
> > 	var pc:PendingCall = getTestService.testServlet(param1, param2);
> > 	pc.responder= new RelayResponder(this,"testServlet_Result","testServlet_Fault");
> > }
> 
> サンプルですと、 testというクラスのtestServletというメソッドを呼び出す
> という記述になっているので、OpenAMFは呼び出すクラスを見つけられず
> 呼び出しのエラーとなっています。
> 
> 私の中で考え付くFlashから直接Servletを呼び出す方法は、
> getURL()かLoadVars.send()があります。

  そうですね。おそらくそれが一番早いのかなと思うんですが、
Flash Remoting と同じコードで何とかなればと安易なこと(?)を
考えていたので、選択支に入ってなかったです。

> 稼動しているというアプリではFlash Remoting for Javaで
> Servletの直接呼出しが実現できているということでしょうか?

  そうです。ただし1サーバあたり15万程度と高価なため、
代替えのミドルウェアがあればと思った次第です。

  Flash Remoting 自体は OpenAMF より場合によっては
10倍程度の速度が見込まれるとのことなので、それなりに
価格に対するメリットはあると思うんですが。顧客は少しでも
安く.....。みたいな感じなので....。

  ありがとうございました。
また、何かありましたらよろしくお願いいたします。

-=-=-=-=- Trust and Technology Inc -=-=-=-=-

  Kazuyuki Ikeda mailto:[E-MAIL ADDRESS DELETED]

-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-




Seasar-user メーリングリストの案内