Hi am reading an rss file and calling the HTTPService with
  action script then handling the HTTPService result to a 
  AsyncToken and finally handling the result is onResult function.

  But for some reason It is not giving me any return.
  Here is the HTTPService and the function that calls it:

    <mx:HTTPService id="httpRSS" url="{ rssURL }"   
        resultFormat="object" showBusyCursor="true"/>


     public function init():void
     {
        httpRSS.send();
        var token:AsyncToken = httpRSS.send();
        var callResponder:Responder = new Responder(onResult,onFault); 
     }
            
     public function onResult(event:ResultEvent):void
     {
        var tmp:Object = event.result.RDF.item;
        var items:Array = new Array();
        for( var i:String in tmp )
        {
          items.push( tmp[i] );
        }
        externalData = new ArrayCollection( items );                    
     }   

*********************************************************
*********************************************************
*********************************************************

Here is the whole code

*********************************************************
*********************************************************
*********************************************************


<?xml version="1.0" encoding="utf-8"?>

<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
        xmlns:iframe="com.renaun.iframe.*"
        creationComplete="init()"
        width="100%" height="100%"
        paddingLeft="5" paddingRight="5" paddingBottom="5" paddingTop="5"
        horizontalAlign="left"
        layout="vertical" viewSourceURL="srcview/index.html">

    <mx:HTTPService id="httpRSS" 
        url="{ rssURL }" resultFormat="object"
        showBusyCursor="true"/>

        <!--         result="onComplete( event )" -->
    <mx:Script>
        <![CDATA[
                import mx.controls.Alert;
                import mx.rpc.AsyncToken;
            import mx.formatters.DateFormatter;
            import flash.net.navigateToURL;
            import mx.collections.ArrayCollection;
            import mx.rpc.events.ResultEvent;
            
            [Bindable]
            private var rssURL:String =
"http://weblogs.macromedia.com/mxna/xml/rss.cfm?query=byCategory&languages=1&categoryId=5";;
            
            [Bindable]
            private var externalData:ArrayCollection;
            
            public function init():void
            {
                httpRSS.send();
                var token:AsyncToken = httpRSS.send();
                var callResponder:Responder = new
Responder(onResult,onFault); 
            }
            
            public function onResult(event:ResultEvent):void
            {
                var tmp:Object = event.result.RDF.item;
                var items:Array = new Array();
                for( var i:String in tmp ) {
                    items.push( tmp[i] );
                }
                externalData = new ArrayCollection( items );                    
            }

            
            public function onFault():void
            {
                  mx.controls.Alert.show("http error");
            }

            private function processURL( url:String ):void {
                var request:URLRequest = new URLRequest(url);
                navigateToURL( request );
            }
            
            private function formatDate( date:String ):String {
                var df:DateFormatter = new DateFormatter();
                df.formatString = "(YYYY.MM.DD)";
                return df.format( date );
            }

        ]]>
    </mx:Script>
    <mx:Panel layout="vertical"
        title="Adobe MXNA Flex Feed (RSS Reader Example #2)"
        width="100%" height="100%" 
        paddingLeft="5" paddingRight="5" paddingBottom="5" paddingTop="5">

        <mx:Repeater width="100%"
            id="newsItems"
            dataProvider="{ externalData }">
            <mx:VBox width="100%" horizontalAlign="left"
creationCompleteEffect="Fade">
                <mx:LinkButton id="lbtn"
                    textAlign="left"
                    label="{ newsItems.currentItem.title }" 
                    click="processURL(
event.currentTarget.getRepeaterItem().link )" />
                <mx:TextArea paddingLeft="10" paddingRight="10"
editable="false"
                    width="98%" cornerRadius="6" height="50"
                    backgroundColor="0xFAFAFA"
                    htmlText="{ newsItems.currentItem.description }"
></mx:TextArea>
                <mx:Text paddingRight="10" 
                    width="98%" 
                    textAlign="right"
                    text="{ newsItems.currentItem.creator + ' ' +
newsItems.currentItem.date + ' ' + newsItems.currentItem.subject }" />
                   
            </mx:VBox>
        </mx:Repeater>
    </mx:Panel>
</mx:Application>


Reply via email to