- 浏览: 510843 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
michao:
大哥,还有aperture.exe吗? 发我一份,找不到呀,m ...
使用aperture框架让AS3与C++通信,执行本地代码 -
Aaron-Joe-William:
文件被删除了。下不了。
SQLite 数据库加密的一种解决方案 -
hanmiao:
樓主的文章不就是來自IBM Developers里的http: ...
mina 入门 -
howesen:
断包与粘包问题,需要处理下就好了
mina接收数据不全(2) -
sniciq:
git clone --recursive git://git ...
ESB学习笔记(Spring Integration实战)
什么是BlazeDS呢?BlazeDS是一个基于服务器的Java远程调用(remoting)和Web消息传递(messaging)技术,它能够使得后台的Java应用程序和运行在浏览器上的Flex应用程序相互通信。在各大搜索引擎里,关于BlazeDS的中文教程来来去去都是那几篇,而且都是使用Eclipse来开发Flex的(用Eclipse开发Flex跟Java很不错的)。这篇文章将会尝试着使用Flex Builder 3,用一个经典的“HelloWorld”例子来让你学会BlazeDS的使用方法。
在开始之前,你需要安装JDK和Tomcat并实现成功配置,详细请看:Tomcat 6.0 配置。
一、我电脑上的配置是如下四点,如果你电脑上的配置不同于以下四点,可能需要你对你的电脑进行修改一下:
1、Window XP;
2、Tomcat 6.0,安装在“C:\Program Files\Apache Software Foundation\Tomcat 6.0\”,下文会使用“[tomcat-home]”来代替这长长的目录路径;
3、Tomcat服务器使用端口8080;
4、使用Flex Builder 3而非Eclipse。
二、如果你对以下操作比较陌生,那你应该先熟悉一下以下操作:
1、写一个Java文件并编译它;
2、使用Flex Builder 3;
3、停止和开户Tomcat服务器。
三、下载BlazeDS:
1、网址:http://opensource.adobe.com/wiki/display/blazeds/Release+Builds ;
2、下载那个“BlazeDS binary distribution”(http://download.macromedia.com/pub/opensource/blazeds/blazeds_bin_3-0-0-544.zip);
i. 把那个 .zip 文件保存到你的电脑上
ii. 里面有两个文件:blazeds.war 和 blazeds-bin-readme.html
iii. 把里面的 blazeds.war 文件解压到这个目录下:[tomcat-home]\webapps
3、如果Tomcat正在运行,请停止它然后再启动它(就是重启Tomcat);
4、打开这个目录:[tomcat-home]\webapps
i. 你应该会看到一个名为“blaseds”的文件夹
ii. 在blaseds文件夹里,会有一个名为“WEB-INF”的文件夹
iii. 在WEB-INF文件夹里会有很多文件夹,其中有一个名为“classes”的文件夹。Flex应用程序需要使用到的Java class就是放到这个文件夹里的
iv. 还有一个名为“flex”的文件夹,它里面有一个remoting-config.xml,我们要在这个remoting-config.xml文件里添加destination结点来告诉Flex应用程序如何连接上Java class的
四、使用文本编辑器编写以下这个Java文件并命名为“HelloWorld.java”:
- package cn.riahome.java;
- public class HelloWorld {
- public HelloWorld() {
- }
- public String getHelloWorld() {
- return "Hello World!";
- }
- }
编译这个Java文件并得到HelloWorld.class文件。在 [tomcat-home]\webapps\blazeds\WEB-INF\classes 目录下新建一个名为“cn”的文件夹,然后在cn文件夹新建一个“riahome”文件夹,接着在riahome文件夹里新建一个“java”文件夹,最后把刚才编译得到的HelloWorld.class文件放到java文件里,HelloWorld.class的路径应该为:[tomcat-home]\webapps\blazeds\WEB-INF\classes\cn\riahome\java\HelloWorld.class
五、打开 [tomcat-home]\ webapps\blazeds\WEB-INF\flex\remoting-config.xml 这个文件,然后在</default-channels>标签之后和</service>标签之前添加以下结点(注意id属性和source结点的值,source结点描述了完整的包路径和类名):
- <destination id="helloWorld">
- <properties>
- <source>cn.riahome.java.HelloWorld</source>
- </properties>
- </destination>
六、如果Tomcat正在运行,请停止它然后再启动它(就是重启Tomcat);
七、请按以下步骤新建一个名为“HelloWorld”的Flex Project:
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="466" height="552" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"> <param name="_cx" value="12330"> <param name="_cy" value="14605"> <param name="FlashVars"> <param name="Movie" value="http://easyphpchina.com/yboycn/RIAHome/Flex.Flash.AIR.AS3/BlazeDS_step1.swf"> <param name="Src" value="http://easyphpchina.com/yboycn/RIAHome/Flex.Flash.AIR.AS3/BlazeDS_step1.swf"> <param name="WMode" value="Window"> <param name="Play" value="0"> <param name="Loop" value="-1"> <param name="Quality" value="High"> <param name="SAlign"> <param name="Menu" value="-1"> <param name="Base"> <param name="AllowScriptAccess"> <param name="Scale" value="ShowAll"> <param name="DeviceFont" value="0"> <param name="EmbedMovie" value="0"> <param name="BGColor"> <param name="SWRemote"> <param name="MovieData"> <param name="SeamlessTabbing" value="1"> <param name="Profile" value="-1"> <param name="ProfileAddress"> <param name="ProfilePort" value="193852056"> <param name="AllowNetworking" value="all"> <param name="AllowFullScreen" value="false"></object>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="740" height="638" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"> <param name="_cx" value="19579"> <param name="_cy" value="16880"> <param name="FlashVars"> <param name="Movie" value="http://easyphpchina.com/yboycn/RIAHome/Flex.Flash.AIR.AS3/BlazeDS_step2.swf"> <param name="Src" value="http://easyphpchina.com/yboycn/RIAHome/Flex.Flash.AIR.AS3/BlazeDS_step2.swf"> <param name="WMode" value="Window"> <param name="Play" value="0"> <param name="Loop" value="-1"> <param name="Quality" value="High"> <param name="SAlign"> <param name="Menu" value="-1"> <param name="Base"> <param name="AllowScriptAccess"> <param name="Scale" value="ShowAll"> <param name="DeviceFont" value="0"> <param name="EmbedMovie" value="0"> <param name="BGColor"> <param name="SWRemote"> <param name="MovieData"> <param name="SeamlessTabbing" value="1"> <param name="Profile" value="0"> <param name="ProfileAddress"> <param name="ProfilePort" value="0"> <param name="AllowNetworking" value="all"> <param name="AllowFullScreen" value="false"></object>
八、在 HelloWorld.mxml 文件的<mx:Application></mx:Application>标签之间添加如下代码:
- <mx:Script>
- <![CDATA[
- import mx.rpc.events.FaultEvent;
- import mx.controls.Alert;
- import mx.rpc.events.ResultEvent;
- private function resultHandler(event:ResultEvent):void
- {
- // 显示收到的 "Hello World!" 数据
- Alert.show(event.result.toString(), "提示");
- }
- private function faultHandler(event:FaultEvent):void
- {
- Alert.show(event.fault.toString(), "提示");
- }
- ]]>
- </mx:Script>
- <mx:RemoteObject id="remoteObject" destination="helloWorld" source="cn.riahome.java.HelloWorld"
- result="resultHandler(event)" fault="faultHandler(event)"/>
- <mx:Button label="发送" click="remoteObject.getHelloWorld()"/>
九、按F11测试,你看到一个叫“发送”的按钮,按一下它,会弹出“Hello World!”,这是后台发送过来的。至此,我得恭喜您!您成功了!
十、最后需要注意的是:<mx:RemoteObject>标签的destination属性值必须跟remoting-config.xml文件里destination标签的id值一致!
如果您还是测试不成功,请注意以下几点:
1、核实HelloWorld.class文件已经在[tomcat-home]\webapps\blazeds\WEB-INF\classes\cn\riahome\java目录下;
2、检查remote-config.xml文件里是否已经添加了上述的<destination>标签;
3、有没有重启Tomcat服务器;
4、检查<mx:RemoteObject>标签有没有这两个属性:destination=”helloWorld”、source=”cn.riahome.java.HelloWorld”
5、打开Flex Project的属性面板,查看 Flex Compiler 里的Additional compiler arguments选项,是否已经有“-services”指令,如下图(通常在新建Project的时候就自动添加的)
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="1044" height="535" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0">
<param name="_cx" value="27623">
<param name="_cy" value="14155">
<param name="FlashVars">
<param name="Movie" value="http://easyphpchina.com/yboycn/RIAHome/Flex.Flash.AIR.AS3/BlazeDS_step3.swf">
<param name="Src" value="http://easyphpchina.com/yboycn/RIAHome/Flex.Flash.AIR.AS3/BlazeDS_step3.swf">
<param name="WMode" value="Window">
<param name="Play" value="0">
<param name="Loop" value="-1">
<param name="Quality" value="High">
<param name="SAlign">
<param name="Menu" value="-1">
<param name="Base">
<param name="AllowScriptAccess">
<param name="Scale" value="ShowAll">
<param name="DeviceFont" value="0">
<param name="EmbedMovie" value="0">
<param name="BGColor">
<param name="SWRemote">
<param name="MovieData">
<param name="SeamlessTabbing" value="1">
<param name="Profile" value="-1">
<param name="ProfileAddress">
<param name="ProfilePort" value="7536732">
<param name="AllowNetworking" value="all">
<param name="AllowFullScreen" value="false"></object>
6、打开Flex Project的属性面板,再次检查 Flex Server 里的 Root folder、Root URL、Conntext root,按一下 Validate Location 按钮测试是否成功
7、检查所有代码有没有错误
发表评论
-
十个Flex/Air疑难杂症及解决方案简略
2010-05-31 17:17 3344最近去一家台企面 ... -
Windows环境下配置+运行red5源码+AS3连接red5简单示例
2010-04-19 13:39 5183Windows环境下配置+运行red5源码+AS3连接red5 ... -
使用aperture框架让AS3与C++通信,执行本地代码
2010-04-08 16:48 3257我们都知道,AIR的效果是非常出色的,这也是大家喜欢她的原因, ... -
SQLITE入门至精通
2010-04-07 11:13 3026关键 ... -
教你解析FLEX JSON中的一个问题 关于键值 和键
2010-04-01 15:25 2325字符串:message = ' "param&quo ... -
air写文件保存在安装目录
2010-03-31 15:46 3222AIR中..保存文件我们般会像下面这样操作 var f ... -
弱弱的一个小问题,bitmapdata pngencoder base64 bytearray
2010-03-31 14:16 1153好久没写东东了,呵呵。随便写点点。关于bitmapdata如何 ... -
FLASH教程:SWF间的双向通信
2010-03-02 18:23 1362假设有一个主 SWf 名为 m ... -
如何把as文件生成swf格式文件
2010-03-02 18:22 5290一,从http://opensource.adobe.com/ ... -
Flex数据交互方法 :httpservice, webservice, RemoteObject, socket
2010-02-27 17:06 1912【转载】 文章分类:Flash编程 http://h ... -
理解Flash Player 9垃圾回收机制
2010-02-02 18:27 1087理解Flash Player 9垃圾回 ... -
一些漂亮的Flex主题下载
2010-01-11 10:31 6176一些漂亮的Flex主题下载1Digg meWindows Cl ... -
通过Stratus 服务器在Flash Player中使用RTMFP 开发 点对点应用(一)
2010-01-08 17:43 5399作者:Jozsef Vass 译者:巴巴鲁 ... -
ActionScript 3.0著名开源库 大集合
2009-12-29 17:26 2044这篇文章开始于对Adrian ... -
Flex 读取XML配置文件总结
2009-11-19 11:45 1989在Flex中我 ... -
一个list定义组件,网上找了很久没有,自己做了一个。
2009-10-29 11:55 1251一个list定义组件,网上找了很久没有,自己做了一个。希望对大 ... -
如何使用Flex RemoteObject components 与JAVA交互
2009-10-08 18:04 53122008-12-25 | 22:53分类:前端开发 ... -
flex 在线录制视频语音
2009-09-12 17:45 3647<?xml version="1.0" ... -
flex 蒙板 遮罩
2009-09-11 17:09 3875方法一 <mx:Image source=&q ... -
如何自定义FLEX3的loading进度条
2009-09-05 10:17 1755第一种:修改下载进度的文字为中文 建立扩展至 mx.prel ...
相关推荐
这个版本“blazeds-bin-3.3.0.22497.zip”是BlazeDS的一个特定发行版,包含了运行和部署BlazeDS所需的所有组件。 在解压后的文件中,我们看到两个关键文件: 1. **blazeds.war**:这是一个Web应用归档文件(Web ...
BlazeDS是Adobe公司开发的一款开源项目,它主要提供了一个基于服务器的解决方案,用于实现Java应用程序与客户端的Flex应用之间的远程调用(Remoting)和Web消息传递(Messaging)。这个项目的目标是帮助开发者构建富...
这个“blazeds-bin-4.0.1.17657.zip”压缩包包含了BlazDS的二进制版本,这是一个开放源代码的服务器端技术,由Adobe开发并广泛应用于构建富互联网应用程序(RIA)。它的主要目标是提供数据集成和交互能力,使得基于...
6. "BlazeDS入门教程-很详细-赞原创作者一个" 是一个全面的BlazeDS入门教程,可能包括创建AMF通道、发布服务、与Flex客户端通信等基本操作。 7. "跟我StepByStep学FLEX教程" 系列文章是逐步指导读者如何配置Flex...
blazeds-turnkey-4.0.0.14931第四卷(共四卷) 含tomcat
blazeds-core-3.2.0.3978.jar blazeds-core-3.2.0.3978.jar
Blazeds-bin-4.0.0.15974.zip是一个包含Adobe BlazeDS库的压缩包,专为Flex开发者设计,旨在提供强大的数据集成和远程服务访问功能。BlazeDS是Adobe官方推出的一个开源项目,它允许Flex客户端与Java后端服务器之间...
### Flex Blazeds入门教程详解 #### 一、引言 Flex Blazeds入门教程,由刘铭朝撰写于2008年3月21日,旨在解决开发者在搭建Flex与LCDS(Flex Data Services)工程时遇到的常见问题。这篇教程不仅详细介绍了创建项目...
通过本教程的学习,您不仅了解了Blazeds的基础知识,还掌握了如何使用FlexBuilder 3创建一个简单的Flex LCDS工程。此外,您还学习了如何配置开发环境、理解Blazeds与LCDS的区别,以及如何部署和运行项目。这些技能...
对于初学者来说,这是一个很好的起点,能够快速上手项目。 2. `samples.war`:这是一个包含示例应用的Web应用档案,展示了BlazeDS功能的实际应用,如Remoting、Messaging和Data Services。这些示例可以帮助开发者...
Blazeds Turnkey 4.0.0.14931是一个重要的软件包,主要用于在Flex应用程序和Java服务器之间建立双向通信。Flex是Adobe开发的一款用于构建富互联网应用程序(RIA)的开源框架,而Blazeds是Flex与后端数据服务交互的...
### BlazeDS入门教程详解 #### 一、BlazeDS简介 BlazeDS是一个由Adobe公司提供的开源技术,它主要用于实现在服务器端的Java应用程序与...这是一个基础的入门教程,更多高级功能和应用场景还需要进一步探索和学习。
包含blazeds-common-4.0.0.14931.jar、blazeds-core-4.0.0.14931.jar、blazeds-proxy-4.0.0.14931.jar、blazeds-remoting-4.0.0.14931.jar
4. **Services Configuration**:BlazeDS使用一个XML配置文件来定义服务,包括Remoting Destination、MessageBroker等,使得配置和管理变得更加方便。 5. **Integration with Spring Framework**:BlazeDS可以无缝...
blazeds-turnkey-4.0.0.14931含tomcat 第一卷(共四卷)
blazeds-turnkey-4.0.0.14931.zip分卷二
综上所述,此压缩包提供了丰富的BlazeDS学习资源,包括源码、示例应用和配置文件,对于想要深入了解和使用BlazeDS的Flex开发者来说,这是一个宝贵的资料库。通过研究这些内容,开发者可以提升自己的技能,实现更高效...
总的来说,"Flex + BlazeDS+ Java 入门教程"是一个全面的学习资源,涵盖了从基础的Flex界面设计到复杂的服务器数据交互,适合希望构建富互联网应用的初学者。通过这个教程,你将能够掌握创建动态、交互性强的Web应用...
BlazDS的全称是“Blaze Data Services”,在标题中提到的“blazeds-bin-3.3.0.20776”是BlazDS的一个特定版本号,这通常意味着包含了该版本的所有组件和库。 1. **Flex与Java通信**: Flex是一种用于构建富互联网...