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

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

其实BlazeDS可以看成是LCDS的简化版,它少了后者的Data Management Service高级功能,目前不支持RTMP协议。

一、下载BlazeDS

BlazeDS已经推出正式版:http://opensource.adobe.com/wiki/display/blazeds/Release+Builds,它有三个版本,其中Turnkey版内置了Tomcat和 Flex 3 SDK,还包含blazeds.war、ds-console.war和samples.war,建议初学者使用;Binary Distribution版只包括blazeds.war,此为最简配置;而Source则包含blazeds的Java源代码,建议Java程序员使用。

二、新建BlazeDS工程

1. 创建Flex工程,勾选Use remote object access service

 最好使用Flex 插件版,这样可以将Flex和Java整合在一个工程中。

2. 配置J2EE服务器,对于BlazeDS来说,使用Tomcat就可以了。设定上下文路径和blazeds.war的位置,如下图。

3.  设置资源文件夹名、主文件名称和输出文件的路径,如下图。

三、同域访问

访问HTTP Service可以直接在Flex端直接指定一个同域名的URL,也可以在proxy-config.xml中设置代理。现在我们就用一个简单的HTTP Service来检验工程是否可以在服务器上运行,请参考HTTPServiceDemo.mxml。注意:运行主程序前请启动服务器

四、使用服务器端代理

更多情况下,我们需要对HTTP Service跨域访问,这是因为Flash Player存在安全沙箱。对于跨域访问有二种解决方案:使用服务器端代理和使用Flex Data Services,无论是哪种方案,都需要在服务器端Web应用的根目录下 配置crossdomain.xml 。

对于服务器端代理,可以简单在服务器端定义DefaultHTTP,打开proxy-config.xml,如下配置。其中*号表示http://127.0.0.1:8080/blazeds下所有的HTTP Service。由于我们已经设置了默认的destination,因此在Flex端不需要设定destination了,但需要在Flex中指定HTTPService的绝对URL属性,并设定useProxy="true"。请参看DefaultDestination.mxml。

<destination id="DefaultHTTP">
      <properties>
           <dynamic-url>http://127.0.0.1:8080/blazeds/*</dynamic-url>
      </properties>
 </destination>

如上所述,服务器端代理使用默认的destination,需要指定HTTPService的绝对URL属性,不灵活不安全,我们更多时候还是要自定义destination。如下面的配置,我们在proxy-config.xml中设置destination的属性值为student,然后就可以在Flex中设定destination为student,然后就可以调用该端点对应的HTTP Service了。请参考NamedDestination.mxml。

<destination id="student">
      <properties>
          <url>http://{server.name}:{server.port}/{context.root}/data/student.xml</url>
      </properties>
 </destination>

注意:在url元素中,{server.name}之类的变量和*不能同时使用。

 点击此处下载工程文件。该工程文件也包括后面要讲述的部分。

 





上一篇:使用ArrayCollection的filterFunction属性过滤DataGrid   下一篇:BlazeDS入门:Remote Object Service
您的评论
  • 用户名:新注册) 密码: 匿名评论
  • 评论内容:(不能超过250字,需审核后才会公布,请自觉遵守互联网相关政策法规)

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