• 【设为首页】
  • 【收藏闪客居】
当前位置:主页>Flex>文章内容
  • BlazeDS入门:Remote Object Service
  • 来源:RIA爱好者 作者:Flying 2008-03-15 【

BlazeDS入门:HTTP Service        BlazeDS入门:Remote Object Service        BlazeDS入门——Message Service

1. 编写远程服务类

编写BlazeDS的Java远程服务类有三个要求:

1) 所有被调用的方法必须是public;

2) 所有的编译类必须能够通过BlazeDS的classpath访问得到;

3) 类必须是stateful/stateless的。

大家可以参考工程文件中的SimpleService.java。

2. 配置remoting-config.xml

Java服务类写好后,还需要配置,BlazeDS的Remote Service也是在服务器端对应了一个配置文件:remoting-config.xml,配置好Remote Service后,Flex在运行时才能找到相应的服务类用其调用的方法。下面就是本工程的Remote Service配置文件。

第2~3行指定服务的ID和对应的类,第5~7行设置适配器(adapters)的ID和对应的类。第9~11行指定默认的频道(channels)及其参照,该频道是在services-config.xml中定义的。适配器和频道可以设置多个,采用第一个优先的原则。前面这几项设置适用于proxy-config.xml、remoting-config.xml和我们后面要讲的messaging-config.xml。

第13~18行设置的服务终端(destination),该属性必须和RemoteObject组件的服务终端属性一致。按照服务的种类,服务终端又可以分为代理服务终端、远程服务终端和消息服务终端。上一次讲述的代理服务终端,需要指定该终端的url,而这次我们讲述的远程服务终端,需要指定该终端的source和scope。source对应RemoteObject要调用的远程服务的全限定类名,不像FluorineFX,它不能在RemoteObject组件中指定。scope表示当前远程服务的作用范围,即远程服务类是stateful还是stateless,有application、session和request三个选项。

注意:我们提倡在配置文件中设置,这样更安全也方便后期维护。

3. 使用RemoteObjec组件

对于RemoteObjec组件,请参看http://www.riafan.com/article.asp?id=54的相关内容。一句话,Flex的RemoteObject与后台语言是无关的。在工程文件中的BasicRemoteObject.mxml,调用了SimpleService类的三个方法,当通过BlazeDS从J2EE服务器返回RemoteObjec时,Java数据被序列化成ActionScript数据。其中Java字符串对应ActionScript字符串,Java的数组列表对应ActionScript ArrayCollection。如果你想了解更多Java与ActionScript数据类型的转换,请参考http://livedocs.adobe.com/flex/3/html/help.html?content=data_access_4.html







上一篇:BlazeDS入门:HTTP Service   下一篇:在 Flex 中设置进度条(ProgressBar)完成时效果的例子
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)
FLASH源文件

Copyright © 2006-2008 flashas.net All Rights Reserved.
网站内容咨询: admin#flashas.net (#为@) 联系QQ:40777822 浙ICP备06033001号
(本网站最佳浏览解析度为1024*768, 建议使用IE 6.0或以上版本浏览器。)