nod::ぶろぐ::RIA::Flash/Flex/Ajax

FlashやFlex,(Ajax),S2Flex2,ActionScript3,yui-frameworks,Akabanaプロジェクトなどのメモ帳

S2Componentタグの使い方

S2Componentタグは、これまでのFlashRemotingやFlex1.5で利用していたAMF0での接続を行うものです。

サーバから返って来たObjectはObject型クラスになる。
AsyncTokenを受け取ることができない。

などの制限はありますが、これまでFlashやFlex1.5などで使っていたロジックをFlex2アプリケーションから呼び出して連携させることができます。

使い方は以下の通りです。

1.ライブラリに追加

ダウンロードしたファイルからs2flex2_swc->dist->s2flex2_swcを取り出し、適当な場所に配置してFlex Build Pathにつなげます。

2.mxmlを作成してmxmlnsを追加

mxmlファイルにタグ用のnamespaceを追加します。 swcコンパイル時指定している、"http://www.seasar.org/s2flex2/mxml"を指定します。 これでs2flex_swcに含まれているコンポーネントが使えるようになります。
<mx:Application xmlns:mx="http://www.macromedia.com/2005/mxml" xmlns:s2="http://www.seasar.org/s2flex2/mxml" xmlns="*" layout="absolute" >

3.タグの指定をする。

xmlnsの指定をすると、タグのコンポーネントが使えるようになります。 指定は以下のようにします。
<s2:S2Component id="amf" destination="addService" result="onResult(event)" fault="onFault(event)" showBusyCursor="true" />

ほとんどRemoteObjectタグと一緒です。
destinationには、mxmlをコンパイルするときに--servicesで指定するファイル(flex-enterprise-services.xmlなど)内で定義されたサービス名を指定します。

4.サーバロジックの呼び出し

S2ComponentのremoteCallメソッドを利用してサーバロジックを呼び出します。
amf.remoteCall("calculate2",addDto);

一つ目の引数が呼び出すメソッド名、二つ目以降が引数になります。
上記の例では、calculate2というメソッドにaddDtoというAS3のクラスを渡して呼び出しています。

サーバロジック(java)側でAddDtoを返しているので、マッピングされたAS3のクラスで受け取りたいのですが、型情報が失われてObject型になってしまいます。

データは受け取ることができているので自分でキャストするか、Object型のままで使用するかのどちらかになります。

ダウンロードはこちら

S2flex2 beta1
http://s2flex2.sandbox.seasar.org/ja/index.html

Posted by nod at 2006年03月06日 12:37 | コメント (0) | トラックバック (0) | Clip!! | Clip!! | このエントリーを含むはてなブックマーク |digg it! |del.icio.us it!

この記事に対するコメント

この記事に対するコメントはまだありません。


コメントを投稿する




保存しますか?



この記事のトラックバックURL


この記事に対するトラックバック

この記事に対するトラックバックはまだありません。



Flex.org - The Directory for Flex Get Adobe Flash Player Made with dreamweaverMade with fireworksPowered by Movable Type 3.33-jaPowered by Wandering Wind
Copyright : [Articles] (C) nod::ぶろぐ::RIA::Flash/Flex/Ajax All Rights Reserved.
[Comments/Trackbacks] ... Authors of those have rights.