I am using only java.

The destination name I am using is the same.
This is my mxml code:

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml";
preinitialize="viewConcentration.getListElements()" layout="vertical"
backgroundColor="white" >
        <mx:Script>
                <![CDATA[
                        import mx.utils.ArrayUtil;

                        import mx.rpc.events.ResultEvent;
                        import mx.rpc.events.FaultEvent;
                        import mx.collections.ArrayCollection;
                         import mx.controls.Alert;
                         import mx.utils.ObjectUtil;

                        [Bindable]
                        public var expenseArrayCol:ArrayCollection;
                        [Bindable]
                        public var collection:ArrayCollection;


                        public function resultHandler(event:ResultEvent):void
                        {
                                collection=new ArrayCollection();
                                expenseArrayCol=event.result as ArrayCollection;
                                var obj:Object=expenseArrayCol[0];
                                for (var key:String in obj)
                                {
                                                 var data:String = obj[key] ;
                                                 
collection.addItem({name:key,percent:new Number(data)});
                                }

                        }
                        public function faultHandler(event:FaultEvent):void
                {
                                 Alert.show("Cannot load data"  +  
event.fault.faultString);
                }

                 private function displayField(data:Object, field:String,
index:Number, percentValue:Number):String {
                        var temp:String= (" " + percentValue).substr(0,6);
            return data.name + '\n' + temp +"%" ;
        }

                ]]>
        </mx:Script>

        <mx:RemoteObject id="viewConcentration" destination="viewConc"
showBusyCursor="true">
                <mx:method name="getListElements" result="resultHandler(event)"
fault="faultHandler(event)"/>
        </mx:RemoteObject>

        <mx:Panel layout="horizontal" backgroundColor="white"
backgroundDisabledColor="white">
          <mx:PieChart id="pie" dataProvider="{collection}"
showDataTips="true" height="367"  width="486" >
                <mx:series>
                        <mx:PieSeries field="percent" nameField="name"
                    labelPosition="callout"
labelFunction="displayField"/>
        </mx:series>
          </mx:PieChart>



      <mx:BarChart id="bar" dataProvider="{collection}"
showDataTips="true" height="295" width="600">
        <mx:verticalAxis>
           <mx:CategoryAxis  categoryField="name"/>
        </mx:verticalAxis>

         <mx:series>
                <mx:BarSeries  yField="name" xField="percent" width=".1" />
         </mx:series>
      </mx:BarChart>
        </mx:Panel>
         <mx:Legend dataProvider="{pie}" direction="horizontal"
horizontalGap="2"/>
</mx:Application>


And this is the java method i am trying to call:

public List getListElements(){
                System.out.println("i am inside getListelements");
                List rows = new ArrayList();
                Map pieValues=new HashMap();
                concentrationMap = (Map<String,EnumConcentration>)
FlexContext.getFlexSession().getAttribute("Concentration_Map");
                if(concentrationMap.size() > 0){
                        EnumConcentration concen;
                        for (Iterator it = 
concentrationMap.keySet().iterator(); it.hasNext
();)
                        {
                                concen = 
(EnumConcentration)concentrationMap.get((String)it.next
());
                                pieValues.put(concen.getEnumName(), new 
Double(concen.getAmtPct
()));
                        }
                }
                rows.add(pieValues);
                return rows;
        }

--

You received this message because you are subscribed to the Google Groups "Flex 
India Community" group.
To post to this group, send email to flex_in...@googlegroups.com.
To unsubscribe from this group, send email to 
flex_india+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/flex_india?hl=en.


Reply via email to