Flex调用Web服务的应用开发(二)

程序加载初始化调用Web服务的应用

 

正常情况下集合中放置对象但是放置一般的数据类型时需要要注意的:

如下:

在一个字符串的集合中如果没有列的名称则列名称为集合名称如:

 <mx:DataGrid dataProvider="{dataList}"     x="24.5" y="107" width="351">
    <mx:columns>
        <mx:DataGridColumn dataField="dataList"   headerText="aa"/>
    </mx:columns>
 </mx:DataGrid>

 

代码如下:

<?xml version="1.0" encoding="utf-8"?>
<mx:Canvas xmlns:mx="http://www.adobe.com/2006/mxml" width="400" height="300"  initialize="initApp()"   >

<mx:Script>
 <![CDATA[
  import mx.collections.ArrayCollection;
  import mx.controls.Alert;
  import mx.rpc.soap.LoadEvent;
  
  import mx.rpc.events.FaultEvent;
  import mx.rpc.events.ResultEvent;
  
  [Bindable]
  private var dataList:ArrayCollection;
  [Bindable]
  private var tmp:String;
  
  //初始化函数可以再creationComplete或initialized兑web服务的操纵进行初始化调用
  private function initApp():void
  {
         //初始化回调callService(相等于mx:WebService组件中load属性)
    weatherWs.addEventListener(LoadEvent.LOAD,callService);
  }
  
  //回调函数
  private function callService(event:LoadEvent):void
  {

   //调用相应的函数
    weatherWs.getList();
  }
  
  
  //事件绑定处理方法
        private function resultHandler(event:ResultEvent):void
        {
         //强制转换为字符串
         tmp=event.result as String;
        }
       
        private function resultHandlerList(event:ResultEvent):void
        {
         //强制转换为集合
            dataList=event.result as ArrayCollection;
        }
       
         //错误处理方法
        private function faultHandler(event:FaultEvent):void
        {
              Alert.show(event.fault.faultDetail);
        }
       
 ]]>
</mx:Script>
 <mx:WebService id="weatherWs" wsdl="http://localhost:8090/FlexWS/services/FlexWebService?wsdl" >
      <mx:operation name="helloWord" result="resultHandler(event)" fault="faultHandler(event)">
        <mx:request>
           <in0>
            xiaoxiao
           </in0>
           <in1>
            ZH
           </in1>
        </mx:request>
     </mx:operation>
     <mx:operation name="getList" result="resultHandlerList(event)" fault="faultHandler(event)"/>
 </mx:WebService>
 <mx:Button label="查看信息" click="weatherWs.helloWord()" x="101" y="10"/>
 <!--表达式-->
 <mx:Label text="{weatherWs.helloWord.lastResult}"  y="12" x="260"/>
 
 <mx:DataGrid dataProvider="{dataList}"     x="24.5" y="107" width="351">
    <mx:columns>
        <mx:DataGridColumn dataField="dataList"   headerText="aa"/>
    </mx:columns>
 </mx:DataGrid>
 
 
</mx:Canvas>

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值