问题是,如何实现?
AS3有序对象应该保持属性插入顺序,所以我通过spark远程对象传递有序对象并将其作为LinkedHashMap接收,但是for each循环以混乱的顺序读取em。
我还试图查找有关在过去3天的空闲时间内传递OrededObjects的文档,但到目前为止没有任何结果=/
我不是在追求一般的功能,我只是想知道这是否可能。
简短的示例:
Flex
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Declarations>
<s:RemoteObject
id="exampleRO"
destination="example"/>
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.utils.OrderedObject;
private var oobject:OrderedObject=new OrderedObject();
private function sendObject(){
oobject["key1"]="value1";
oobject["key2"]="value2";
oobject["key3"]="value3";
oobject["key4"]="value4";
exampleRO.send(oobject);
}
]]>
</fx:Script>
<s:Button click="sendObject()"/>
</s:Application>Java后端
import java.util.Iterator;
import java.util.LinkedHashMap;
import java.util.Map;
import org.apache.log4j.Logger;
public class somename{
private static Logger logger = Logger.getLogger(somename.class);
public void send(LinkedHashMap<String, Object> oobject){
Iterator it;
Map.Entry e;
for(it=oobject.entrySet().iterator(); it.hasNext();){
e = (Map.Entry)it.next();
logger.info("oobject key: "+ e.getKey() + " value:" + e.getValue());
}
}
}发布于 2012-09-17 03:36:19
只是让它正常工作=)
<?xml version="1.0" encoding="utf-8"?>
<s:Application xmlns:fx="http://ns.adobe.com/mxml/2009"
xmlns:s="library://ns.adobe.com/flex/spark"
xmlns:mx="library://ns.adobe.com/flex/mx">
<fx:Declarations>
<s:RemoteObject
id="exampleRO"
destination="example"/>
</fx:Declarations>
<fx:Script>
<![CDATA[
import org.as3commons.collections.LinkedMap;
private var oobject:LinkedMap=new LinkedMap();
private function sendObject(){
oobject.add("key1","value1");
oobject.add("key2","value2");
oobject.add("key3","value3");
oobject.add("key4","value4");
oobject.add("key5","value5");
}
]]>
</fx:Script>
<s:Button click="sendObject()"/>
</s:Application>https://stackoverflow.com/questions/12430117
复制相似问题