[akabana-user:155] Re: [yui]yui frameworksをAIRで使用する場合。

Masanobu Shimura [E-MAIL ADDRESS DELETED]
2007年 9月 17日 (月) 18:42:14 JST


近藤さん

Gatwayの解決が今一ですが、とりあえず yuiから S2Flex2のSampleを呼べましたので
参考まで下記に私のやり方を書きます。

1. YuiApplication内で、defaultGatewayと、RemotingServiceを設定する。
<yui:YuiApplication
    layout="absolute"
    xmlns:mx="http://www.adobe.com/2006/mxml"
    xmlns:yui="http://akabana.seasar.org/yui/mxml"
    xmlns:helloworld.view="examples.yui.helloworld.view.*"
    xmlns:helloworld.logic="examples.yui.helloworld.logic.*"
    initialize="initApp()"
>
	<mx:Script>
		<![CDATA[
			import org.seasar.akabana.yui.framework.application.ApplicationUtil;
			private function initApp():void{
				  ApplicationUtil.getGlobalsApplication().parameters["remoting.defaultGateway"]
					="http://localhost:8080/s2flex2-example/gateway";
			}
        ]]>
    </mx:Script>
<yui:RemotingService id="amf" destination="addService" />
....
</yui:YuiApplication>

2. Logic内部で。

 		[Service]
		public var addService:RemotingService;
.......
		public function calculate():void
		{
			var addDto:AddDto = new AddDto();
			addDto.arg1=int("22");
			addDto.arg2=int("33");
			addService.calculate2(addDto);
		}
		
		public function addServiceCalculate2ResultHandler( ret:RpcResultEvent ):void
		{
			var retObj:AddDto = ret.result as AddDto;
			trace(retObj.sum.toString());
			trace(retObj.calclateDate.toDateString());
		}
		public function addServiceCalculate2FaultHandler( ret:FaultEvent ):void
		{
			trace(ObjectUtil.toString(ret.fault));
		}

yuiはEvent Handlerが自動登録なので、なかなかよいですね。
現在、勉強中です。

志村


07/09/13 に nobu<[E-MAIL ADDRESS DELETED]> さんは書きました:
> 近藤(nobu)です。
>
> >志村さん
>
> S2Flex2Serviceを使用する場合はそれでOKなのです。
> S2Flex2を使用する方法なら、志村さんのやり方は私の想定してい
> たやり方と同じです(^o^)/
>
> yui自体が持つRCPサービスはs2flex2-components.swcを使用しない
> yui独自のRemoteServiceクラスですよね?その独自側の方ではどの
> ようにやるのかなと思っている次第です。
>
> (なんか勘違いしている発言をしていたらすみません)
>
>
>
> Masanobu Shimura さんは書きました:
> > 近藤さん
> >
> > 下記添付の様に私はやりましたが。
> > その後は gatewayUrlを外部 設定 File化しています。
> >
> > 参考まで
> >
> > 志村
> >
> > [akabana-user:130] Re: Air 対応について
> > Masanobu Shimura [E-MAIL ADDRESS DELETED]
> > 2007年 7月 21日 (土) 13:54:01 JST
> >
> >     * 前の記事 [akabana-user:129] Air 対応について
> >     * 次の記事 [akabana-user:131] Re: Air 対応について
> >     * 記事の並び順: [ 日付 ] [ スレッド ] [ 件名 ] [ 著者 ]
> >
> > 自己レスです。
> >
> > 下記の様に gatewayUrlを設定しただけで、使えました。
> > 大変使い易いですね。
> >
> > 今後もよろしくお願いいたします。
> >
> > yuiも期待しています。
> >
> > 志村
> >
> > <s2:S2Flex2Service
> > gatewayUrl="http://localhost:8080/s2flex2-example/gateway" id="amf"
> > destination="addService"
> >       result="onResult(event)" fault="onFault(event)" showBusyCursor="true" />
> >
> > 07/09/13 に nobu<[E-MAIL ADDRESS DELETED]> さんは書きました:
> >> 近藤(nobu)です。
> >>
> >> AKABANAのyuiのところを読んでいて思ったので質問します。
> >> yuiの持っているRCPフレームワークでは「gatewayUrlの記述やjava側
> >> のServiceクラスの指定」とあります。
> >>
> >> このgatewayUrlをS2Flex2のように指定することはできるのでしょうか?
> >>
> >> というのも、AIRでyuiを仕様して、サーバーサイドと連携できないかと
> >> 考えています。このgatewayUrlの指定を省けるのは、Webアプリケーション
> >> の場合、デフォルトでは自分自身(localhost)を指し示していると
> >> 思っているのです。
> >> AIRでS2Flex2を使用する場合、リモート先のアドレスをS2Flex2Service
> >> のgatewayUrlに"http://www.foo.com:8080/hoge/gateway"というように
> >> 指定しないと外部サーバーに配置したサービスは利用できないと思って
> >> いるのですが、yuiの場合、そのあたりいかがでしょうか?
> >>
> >> ソースをざっとおっかけて見た限りでは、RemotingServiceクラスに
> >> gatewayUrlのgetter/setterが入るので、できるのかな〜〜と期待して
> >> います。
> >>
> >> 以上、よろしくお願い致します。
> >> _______________________________________________
> >> akabana-user mailing list
> >> [E-MAIL ADDRESS DELETED]
> >> https://ml.seasar.org/mailman/listinfo/akabana-user
> >>
> > _______________________________________________
> > akabana-user mailing list
> > [E-MAIL ADDRESS DELETED]
> > https://ml.seasar.org/mailman/listinfo/akabana-user
> >
>
> _______________________________________________
> akabana-user mailing list
> [E-MAIL ADDRESS DELETED]
> https://ml.seasar.org/mailman/listinfo/akabana-user
>


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