由于自己用的纯AS3编写的工程!

在默认情况下FluorineFx,配置出来,所返回的结果都是基于Flex,mx包下面的数据类型!

无奈纯AS3下面接收不了服务端方法所返回的数据类型!一般情况下都是返回的!ArrayCollection对象!

除非,返回的是字符数据!否则我们的纯AS3一般是接收不了的!

研究了半天,发现只要修改一下FluorineFx的相关配置就可以,让他返回多维数组类型,这样我们的AS3就可以接收了!

 

具体修改是:

把WEB-INF目录下的services-config.xml文件。

 

代码
<?xml version="1.0" encoding="utf-8" ?> 
<services-config>
    
<services>
    
<service-include file-path="remoting-config.xml" />
    
</services>
    
<channels>
        
<channel-definition id="my-amf" class="mx.messaging.channels.AMFChannel">
            
<endpoint uri="http://{server.name}:{server.port}/{context.root}/Gateway.aspx" class="flex.messaging.endpoints.AMFEndpoint"/>
            
<properties>
              
<legacy-collection>true</legacy-collection>//把这里加上,就ok了!
            
</properties>
        
</channel-definition>
    
</channels>
</services-config>

 

<legacy-collection>true</legacy-collection>

//就是他了,把他加上,或者取消注释!那么返回的数据就都是数组类型,即使这样

public ArrayCollection arrycoll()

{

     ArrayCollection array = new ArrayCollection();

  return array ;

}

照样返回一个多维数组!

o(∩_∩)o 哈哈!很爽哦!记录一下,提醒自己!

 

posted on 2009-12-24 01:00  红蜻蜓`  阅读(382)  评论(0编辑  收藏  举报