- 浏览: 50129 次
- 性别:
- 来自: 武汉
最新评论
无论是哪种服务器端技术都能够很轻松地应用 XML,因为 XML 完全是一个基于文本的协议。像 XML 这样基于文本的协议的缺点是额外的数据抽象层的编写与维护工作相对很沉重。此外,如果数据需要序列化和反序列化,那么这个数据抽象层在客户端和服务器端都会占用很多资源。
Flash Player 可以支持另外一种传输协议,这个协议能够缓解由基于文本的协议导致的传输瓶颈问题,能够帮助开发者以更简单的方式与服务器交互。这就是 AMF(Action Message Format)。它是一个二进制格式的协议,能够替代用于传输XML的基于文本的协议而在 HTTP 协议之上交换数据。采用 AMF 的应用中,数据抽象层完全可以省去,客户与服务器间的通讯效率比传统的应用基于文本的协议传输要高得多。
BlazeDS 中包含了 AMF 的 Java 实现,可以用来与服务器端的 Java 对象远程交互,也可以用来在客户端之间传递消息。开发人员可以借助 BlazeDS 的远程技术简单地调用 POJO、Spring 服务或EJB方法。开发人员可以通过其消息系统从客户端向服务器端发送消息,当然也可从服务器端向客户端发送消息。
BlazeDS 也可以与其他一些消息系统结合使用,比如JMS、ActiveMQ。由于其远程技术与消息系统采用的方式是在 HTTP 协议上传输 AMF 数据,BlazeDS 因此在性能上拥有很大优势,同时也避免了额外的数据抽象层的处理工作。BlazeDS 在很多基于 Java 的应用服务器环境下都能正常工作,这些服务器包括 Tomcat、WebSphere、WebLogic、JBoss 以及 ColdFusion。此外,无论是 web(在 Flash Player 中运行)还是桌面(在Adobe AIR下运行)的 Flex 应用程序中,BlazeDS 的使用都很简单。
简单来说 BlazeDS是一个基于服务器的 Java 远程调用和 Web 消息传递技术,它能够让后台的 Java 应用程序和运行在浏览器上的 Flex 应用程序相互通信。BlazeDS 是 Adobe 的一个开源项目,里面提供了 Java 封装 AMF3 格式的方法。下面通过一个 HelloWorld 的例子对它做一个初步的了解。
一、所需的软件:
MyEclipse + Tomcat 6.0 + Flex Builder 3 + BlazeDS,软件的下载请直接问 goole。
二、配置服务器端(MyEclipse + Tomcat 6.0 + BlazeDS)
[url=http://blog.photo.sina.com.cn/showpic.html#blogid=3ecb9b110100b2qu&url=http://static2.photo.sina.com.cn/orignal/3ecb9b11t586b644626d1]
[/url]
1. 先将 BlazeDS 压缩包解开,然后找到 blazeds.war 再用 winrar 解开。
[url=http://blog.photo.sina.com.cn/showpic.html#blogid=3ecb9b110100b2qu&url=http://static13.photo.sina.com.cn/orignal/3ecb9b11t586b6555ad3c]
[/url]
2. 打开 MyEclipse,配置 Tomcat 服务器:Window -> Preferences -> MyEclipse -> Application Servers -> Tomcat -> Tomcat 6.x 配置 Tomcat home directory 为 Tomcat 的安装路径,同时选择 Tomcat server -> Enable。
[url=http://blog.photo.sina.com.cn/showpic.html#blogid=3ecb9b110100b2qu&url=http://static1.photo.sina.com.cn/orignal/3ecb9b11t6f3df0a9e210]
[/url]
3. 接下来,在 MyEclipse 中创建一个 Web Project,工程名 blazeds_project。
[url=http://blog.photo.sina.com.cn/showpic.html#blogid=3ecb9b110100b2qu&url=http://static9.photo.sina.com.cn/orignal/3ecb9b11t586b67edab28]
[/url]
5. 在左侧视图中选中 WebRoot 右键 -> Import -> FileSystem -> 选择 BlazeDS 安装目录下的 blazeds 文件夹。选中后打勾,Finish。出现 Override 提示框,选择 Yes To All。
6. 下面在本工程的 src 目录下编写一个 Java 类(包名 blog.sina.yyy98,类名 HelloWorld):
package blog.sina.yyy98;
public class HelloWorld {
public String getHello() {
return "Hello World";
}
}
7. java 类写好了,下面要在 remoting-config.xml 中声明这个类(黑体字部分):
class="flex.messaging.services.RemotingService">
blog.sina.yyy98.HelloWorld
[url=http://blog.photo.sina.com.cn/showpic.html#blogid=3ecb9b110100b2qu&url=http://static1.photo.sina.com.cn/orignal/3ecb9b11t586b69c1ea00]
[/url]
8. 好了,大功告成,现在将这个项目部属到 Tomcat 中,然后启动 Tomcat。
三、创建 Flex 客户端
[url=http://blog.photo.sina.com.cn/showpic.html#blogid=3ecb9b110100b2qu&url=http://static14.photo.sina.com.cn/orignal/3ecb9b11t586b6b06740d]
[/url]
1. 新建一个 Flex 项目,名称为 flex_client,选择 Application server type:J2EE。
[url=http://blog.photo.sina.com.cn/showpic.html#blogid=3ecb9b110100b2qu&url=http://static5.photo.sina.com.cn/orignal/3ecb9b11t586b6c435bf4]
[/url]
2. 这是关键的一步,Root folder 为刚刚在 Tomcat 中部署的 blazeds_project 项目路径。为了保持一致性,Root URL 和 Context root 中的相对路径的名称都与该 web 项目名称保持相同。这三项内容填写好后,需要点击 “Validate Configuration” 按钮,进行配置验证(此时最好让 Tomcat 处于开启状态)。验证完成后点击 Finish。
3. 最后编写客户端(flex_client.mxml):
import mx.rpc.events.FaultEvent; import mx.controls.Alert; import mx.rpc.events.ResultEvent; private function resultHandler(event:ResultEvent):void { Alert.show(event.result.toString(), "成功"); } private function faultHandler(event:FaultEvent):void { Alert.show(event.fault.toString(), "失败"); }
]]>
destination="helloWorld" result="resultHandler(event)" fault="faultHandler(event)"/>
remoteObject.getHello()" x="256.5" y="197"/>
AS 表示法:
var remoteObject:RemoteObject = new RemoteObject();
remoteObject.destination = "helloWorld";
remoteObject.addEventListener(ResultEvent.RESULT, resultHandler);
remoteObject.addEventListener(FaultEvent.FAULT, faultHandler);
[url=http://blog.photo.sina.com.cn/showpic.html#blogid=3ecb9b110100b2qu&url=http://static12.photo.sina.com.cn/orignal/3ecb9b11t586b6d4d1dcb]
[/url]
4. Ok,完成。运行 felx_client,收到服务器端返回的 “Hello World” 字符串。
本文转自:http://www.5uflash.com/flashjiaocheng/Flash-as3-jiaocheng/4877.html
发表评论
-
Flash站技术应用(7)—FileReference路径获取问题
2010-04-10 14:24 598关于flash后台通信问题,大家先看下 火山的Flash+a ... -
Flash站技术应用(7)—FileReference路径获取问题
2010-04-10 14:24 668关于flash后台通信问题,大家先看下 火山的Flash+a ... -
flash打造自动提交表单
2010-04-10 14:23 560[1b]方法一: [/1b] Unti ... -
flash打造自动提交表单
2010-04-10 14:23 788[1b]方法一: [/1b] Unti ... -
Flash 8打造的一个超酷的Flash Web站点
2010-04-10 14:23 679用Flash制作一个[1b]Flash web站点[/1b], ... -
flv文件格式解读之视频tags
2010-04-10 09:43 862视频tags的组成: //------------------ ... -
flv文件格式解读之视频tags
2010-04-10 09:43 757视频tags的组成: //------------------ ... -
flv文件格式解读之data tags结构及实例分析
2010-04-10 09:43 911data tag的组成 //----------------- ... -
flv文件格式解读之data tags结构及实例分析
2010-04-10 09:43 870data tag的组成 //----------------- ... -
减少fms对磁盘的损耗
2010-04-10 09:42 580使用fms的rtmp协议可以让用户更为流畅的接受音频或者视频流 ... -
我对as3声音架构的理解
2010-04-09 12:39 559一直都对as3的声音架构 ... -
as3.0游戏开发之打气球系列(一)
2010-04-09 12:39 485好久没有写正经的文章 ... -
as3按钮事件
2010-04-09 12:38 556在刚开始学As3时,如果不知道按钮的事件如onPress的话 ... -
【as3】ActionScript 3.0体验试教学视频教程
2010-04-09 12:38 622很不错的视频教程 原文地址: http://blog.sina ... -
as3 使用sound类(翻译)-暂停和继续播放声音
2010-04-09 12:38 635[1b]问题十[/1b] 如何暂停声音,如何从暂停的地 ... -
flash连连看游戏设计视频教程
2010-04-09 08:18 1139全屏观看地址: [url=http://vhead.blog. ... -
【as3】ActionScript 3.0体验试教学视频教程
2010-04-09 08:18 522很不错的视频教程 原文地址: http://blog.sina ... -
【as3】ActionScript 3.0体验试教学视频教程
2010-04-09 08:17 482很不错的视频教程 原文地址: http://blog.sina ... -
BlazeDS入门及配置
2010-04-09 08:17 653无论是哪种服务器端技 ... -
卡通人物手脚的绘画方法和技巧
2010-04-08 08:18 652俗话说“画人难画手”,这说明画手是比较难的,为此我们应先了解手 ...
相关推荐
把要用blazeds公开给flex的java方法配置在flex-servlet.xml中 把spring整合其它框架的方法的配置放在spring文件夹中。 很有条理 用remoteObject做的helloWorld。 适合新手入门和老手改用spring3来做项目。 如要交流...
偷乐一下懒哈,各位别跟newfish大大说),帮助大家入门,其实这些东西都是在LCDS的sample中包含了的(当然,sample只是包含源码)。 <br> 本教程通过图文介绍和对一些关键性的地方进行解释,让大家了解如何新建...
Table of Contents Change History i Table of Contents ii 1.ActionSctipt核心概念 1 1.1类和对象 Class and Object 1 ...8.4 BlazeDS配置及使用 40 8.5 回溯 40 8.6 Event 40 8.7 代码优化 40 8.8 Demo 40
Flex入门教程及帮助文档 整合Flex和Java--配置篇.pdf 构建全栈式Flex、BlazeDS和Spring集成解决方案
7.4.2 封装BlazeDS及封装后的系统调用方式 260 7.4.3 封装RemoteObject及封装后的调用方式 263 7.5 小结 264 第8章 Flex打印 265 8.1 Web打印方案 265 8.1.1 原生打印 265 8.1.2 宿主打印 265 8.1.3 外部打印...
Flex 学习入门,Flex+BlazeDS整合j2ee开发环境的配置的详细过程,很好很强大
flex和j2ee整合,包含项目操作的步骤图片 Flex 学习入门 Flex+BlazeDS整合j2ee开发环境的配置过程:
WEB-INF目录下新增flex文件夹,新建messaging-config.xml,proxy-config.xml,remoting-config.xml,services-config.xml四个配置文件(具体内容见FlexConfig.rar),修改web.xml文件, 加入下面的内容
这是一篇入门教程,很适合初学者,用图例教大家很快的把项目搭起来
本教程通过图文介绍和对一些关键性的地方进行解释,让大家了解如何新建Flex的LCDS工程,并利用工具快速整合和部署J2EE项目和LCDS项目,掌握了简单的请求RemoteObject和配置的方法,初步掌握LCDS的应用之一。...
10.1 Flex入门 388 10.1.1 问题 388 10.1.2 解决方案 388 10.1.3 工作原理 388 10.2 离开沙箱 393 10.2.1 问题 393 10.2.2 解决方案 394 10.2.3 工作原理 394 10.3 为应用添加Spring BlazeDS支持 ...
10.1 Flex入门 388 10.1.1 问题 388 10.1.2 解决方案 388 10.1.3 工作原理 388 10.2 离开沙箱 393 10.2.1 问题 393 10.2.2 解决方案 394 10.2.3 工作原理 394 10.3 为应用添加Spring BlazeDS支持 ...