So-net無料ブログ作成
検索選択

Flexでサーバ連携 [SE]

検収待ちなので時間が空いたのでFlex3でWebサービスとの連携を試してみました。
Webサービス:
URL:http://aaa/bbb.asmx
メソッドGetString(Stringを戻す)
メソッドの引数:FlexStr

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" applicationComplete="initAPP()">
<mx:WebService id="ws"
wsdl="http://aaa/bbb.asmx" useProxy="false"
    showBusyCursor="true">
    <mx:operation name="GetString" resultFormat="object"
     fault="mx.controls.Alert.show(event.fault.faultString)"
     result="remotingRtnCHandler(event)">
      <mx:request>
        <FlexStr
          {"ここに引数"}
        </FlexStr
      </mx:request>
    </mx:operation>
  </mx:WebService>
  <mx:Label x="31" y="29" text="戻り値が表示される" id="lbtrtn"/>

  <mx:Script>
    <![CDATA[
      import mx.rpc.events.ResultEvent;
      
      private function initAPP():void
      {
        ws.GetString.send();
      }
      
      private function remotingRtnCHandler(e:ResultEvent):void
      {
      lbtrtn.text = e.result.toString();
      }
    ]]>
  </mx:Script>
</mx:Application>


ポイントは<mx:WebService>タグ。
これがWebサービスを呼び出すタグとなり、ここの中に<mx:operation>タグでメソッドを、<mx:request>で引数を渡します。
この例ではFlexの画面が完了(applicationComplete)するとinitAPP()がよばれ、ws.GetString.send()でWebサービスを呼び出します。
<mx:operation>タグではWebサービスが応答した結果を記述してあるので、正常に戻ったらremotingRtnCHandler(event)が呼び出されます。
これがWebサービスの一連の流れです。

他にもFlexでサーバ連携はHttpServiceを利用する方法がありますけど、WebServiceを使うのとどっちがいいのかなー。
あとBlazeDSを使ってみたい。
検収の間に何もないといいなー、そうしたらもっとFlexで遊べるんですが(笑)
タグ:FLEX
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:パソコン・インターネット

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は1年以上新しい記事の更新がないブログに表示されております。