lash和Java结合开发的利器_《Java for Flash动态网站开发手札》_部分章节连载(6)
第15章 在Flash网络应用程序中应用XML(一)——基础应用
XML(可扩展标记语言)正日益成为Internet应用程序中结构化数据存储和交换的标准。Flash也把其数据集成功能完全架构于XML之上,使用Flash创作环境,你可以非常轻松的创建Flash影片应用程序和服务器端的XML技术结合起来,而应用Flash Remoting MX for Java,你也可以把Flash Actionscript数据与使用复杂应用程序(如地址薄、聊天系统或者表单验证系统)的服务器集成起来,这些复杂的应用程序也一般都是使用XML技术建立起来的。
XML语法类似于HTML,都是使用标签来描述一段文本。HTML的标签是预定义的、固定的,我们只能使用,不能修改;XML则不同,它没有预先定义好的标签可以使用,而是依据设计上的需要,自行定义标签(例如你可以定义标签来标示一段数据的类型,就象下面的一行语句:
每个XML标签被称为节点(或称为元素),每个节点属于一种类型(1-XML节点,或者3-文本节点),而且节点都有属性。嵌入在一个节点中的节点称为该节点的子(或者子节点),由此构成一个树型层级结构,称为 XML DOM(文件对象模型),与JavaScript DOM非常相似(JavaScript DOM是网络浏览器中JavaScript元素的结构)。
这一章我们首先介绍怎样在Java架构下创建、使用和处理XML文档的基本知识,然后介绍怎样使用Flash影片应用程序和Flash Remoting MX for Java应用XML文档。
要注意,本章并不对XML文档的概念作详细描述,如果你想了解XML文档的信息可以参考其它的文档和图书。另外,因为XML对象是标准的Actionscript对象,属于基本的Flash知识,并非Flash Remoting MX的组成部分,所以本书也不再对Flash Actionscript XML对象作过多地介绍。
15.1 Java和XML
XML是Java一个重要的组成部分,在Java应用程序的开发过程中,我们初步总结了一下,它主要扮演下面的几种角色:
1Web应用程序部署描述符(web.xml)
2标签库描述文件(TLD)
3企业Bean部署描述符(ejb-jar.xml)
4使用转换为不同类型的客户端创建多种数据视图
5用于SOAP和开发Web服务
6基于XML的B2B交换所用的DTD(文档类型定义)
15.4在Flash影片应用程序中使用XML
要在Flash影片应用程序中使用XML时,你可以使用下面的模式之一来处理XML数据:
1使用Flash影片应用程序可以直接调用XML文档并处理数据,这是Flash最早的功能之一;
2在Flash影片应用程序中不使用XML格式数据。Flash影片应用程序使用简单数据类型向服务器发送数据,如果需要的时候也可以使用XML对象。服务端方法可以产生并处理XML数据,这些函数可以将XML数据转化为简单数据类型,并传回Flash影片应用程序。
3在Flash影片应用程序中直接使用XML格式数据。服务端方法从Flash影片应用程序中获取XML,并将XML作为一个对象返回到Flash影片应用程序中。在Flash影片应用程序中使用ActionScript内建的XML对象和方法可以产生并处理XML。
针对这几种模式,也有不同的使用方法,下面,我们就来分别加以介绍它们的使用方法。
Flash和Java结合开发的利器_《Java for Flash动态网站开发手札》_部分章节连载(5)
第09章 在Flash影片应用程序中处理结果和结果集对象
要连接到Java应用程序服务器上的Flash Remoting MX服务并且调用远程服务方法,就必须使用mx.remoting和mx.rpc这两个ActionScript类库:这两个类库包含了所有的Flash Remoting MX for ActionScript 2.0类和方法实现。
其中,mx.remoting是一个十分核心的ActionScript类库,它包含了用来与应用程序服务器建立连接的所有对象及方法,而mx.rpc可以用来调用远程方法并处理结果。
在前面的章节中,我们介绍了如何通过Flash Remoting MX网关服务在JSP网页和Servlet中向Flash影片应用程序传递数据,也介绍了如何使用Flash影片应用程序向JSP网页和Servlet传递参数,并且介绍了如何使用Flash Remoting MX for Java与JDBC结合调用数据库,而且创建了几个简单的例子。
但是,当从JSP网页和Servlet向Flash影片应用程序传递的数据被接收到时,如何处理接收到的结果呢?我们在前面的例子中已经使用了一些方法,这只是在Flash影片应用程序中处理结果丰富方法中最简单的,Flash Remoting MX for ActionScript 2.0组件内置了丰富的ActionScript脚本语法用来处理结果。
本章就来详细地介绍一下这些ActionScript脚本语法。
9.4使用DataGlue类处理记录集数据
要在一个Flash UI组件中显示RecordSet记录集,一般可以使用该组件内建的setDataProvider()方法或者dataProvider属性,但是如果想在一个Flash UI组件中显示记录集中某一字段下的所有记录,就比较困难了。
例如,在前面的例子中,我们要在一个下拉列表框组件中显示记录集中酒店名,就必须首先创建一个新的单字段记录集,将原记录集中该字段的数据填充新的单字段记录集,然后再使用组件的setDataProvider()方法或者dataProvider属性,显然,这比较麻烦,而且占用的资源也比较多。
为了解决这个问题,Flash Remoting MX还内建了名为DataGlue的ActionScript类。使用DataGlue ActionScript类文件也可以在一个Flash UI组件中显示RecordSet记录集。DataGlue ActionScript类文件随同Flash Remoting MX组件一起被安装,要使用它,必须导入相应的类库,可以使用下面的一行脚本:
import mx.remoting.DataGlue;
DataGlue类有两个内建的方法:DataGlue.bindFormatStrings()和DataGlue.bindFormatFunction(),使用这两个方法都可以在Flash UI组件(例如组合框和列表框)中显示记录集。
9.4.1使用DataGlue.bindFormatStrings方法绑定记录集
可以使用DataGlue.bindFormatStrings()方法在一个Flash UI组件(例如组合框和列表框)中显示RecordSet。下面的一段ActionScript脚本代码将结果RecordSet绑定到名为displayNames的列表框UI组件:
DataGlue.bindFormatStrings(displayNames, result, "#ContactName#", "#customerID#");
在这一段代码中,后两个参数被传递给函数(#ContactName#和#customerID#是记录集的字段名)。当用户选择组件中一个特殊的纪录时,ContactName列被显示在UI组件中,而customerID列被返回。下面,我们来改造一下前面的例子,看一下如何使用DataGlue类。
1打开前面一章我们创建的Restaurant_component.fla文档,将文档另存为Restaurant_component_DataGlue.fla;
2保持当前位于主时间轴编辑状态,修改主时间轴上的脚本代码。在”动作”面板上追加下面的一行脚本代码:
import mx.remoting.DataGlue;
3在舞台上双击影片剪辑元件实例main_mc,使影片剪辑元件main处于编辑状态,选中层Script。保持该层被选中,在“动作”面板上修改其中的脚本代码:
将下面的一段脚本代码:
var newRecordSet:RecordSet = new RecordSet(["hotelName"]);
for (var i = 0; i
newRecordSet.addItemAt(i, {hotelName:resultRecordSet.getItemAt(i).hotel_name});
}
if (newRecordSet.isLocal()) {
newRecordSet.addItemAt(0, {hotelName:"请选择一个酒家或酒店"});
hotelName_cb.dataProvider = newRecordSet;
}
替换为
DataGlue.bindFormatStrings(hotelName_cb, resultRecordSet, "#hotel_name#", "#hotel_name#");
可以看到,前面多行代码实现的功能,现在只需一行就可以实现了。
4因为现在是使用DataGlue类,所以对于UI组件的读取方式也应该改变一下。在本例中,这段脚本代码位于函数applyFilter()体内:
将下面的一段脚本代码
list_lb.dataProvider = resultRecordSet.filter(thisFilter, hotelName_cb.selectedItem["hotelName"]);
替换为
list_lb.dataProvider = resultRecordSet.filter(thisFilter, hotelName_cb.selectedItem.label);
5最后可以测试一下效果,可以看到与前面的例子功能相同。
9.5使用RemotingConnector组件和数据绑定
RemotingConnector是Flash的一个数据组件,使用该组件你可以非常轻松的建立与远程服务的连接——该远程服务必须是通过Flash Remoting MX网关提供——并且可以调用远程服务所定义的方法函数,使用它只需要将该组件拖放到舞台上并定义组件参数,而且可以使用Flash的数据绑定功能。
我们在这里要介绍的是首先是通过编写脚本代码的方式使用RemotingConnector组件。
9.5.1编写脚本代码使用RemotingConnector组件
要通过编写脚本代码的方式使用该组件,也必须首先在开始将RemotingConnector组件拖放到当前舞台上(或者只要在库中就可以了),然后才能开始编写代码使用该组件,这是使用该组件的第一步。
另外,在编写脚本代码时要导入RemotingConnector类,这是使用该组件编写脚本代码的第一步,可以使用下面的脚本语句:
import mx.data.components.RemotingConnector;
下面我们就使用一个例子来看一下怎样使用该组件。
1打开前面一节我们创建的Restaurant_component.fla文档,将文档另存为Restaurant_component_RC.fla;
2保持文档处于主时间轴的编辑状态,改变主时间轴上的脚本代码如下:
stop();
//-------------------------------------------------------------
//导入RemotingConnector类
import mx.data.components.RemotingConnector;
//构造RemotingConnector组件实例并定义实例属性
var my_rc:RemotingConnector = new RemotingConnector();
my_rc.addEventListener("result", returnRowSet_Result);
my_rc.addEventListener("status", returnRowSet_Status);
my_rc.gatewayUrl = "http://localhost:8080/3JK/gateway";
my_rc.methodName = "returnRowSet";
my_rc.serviceName = "3JK";
my_rc.suppressInvalidCalls = true;
function GetRestaurantInfo():Void {
if (selectedhotel_name == undefined && selectedhotel_flavor == undefined && selectedhotel_location == undefined) {
//定义参数为空
my_rc.params = null;
//触发连接,调用远程服务方法
my_rc.trigger();
} else {
//定义传递给远程服务方法的参数
my_rc.params = {hotel_name:selectedhotel_name, hotel_flavor:selectedhotel_flavor, hotel_location:selectedhotel_location};
//触发连接,调用远程服务方法
my_rc.trigger();
selectedhotel_name = "正在加载数据";
}
}
function returnRowSet_Result(ev:Object) {
//接收结果
main_mc.list_lb.removeAll();
main_mc.list_lb.dataProvider = ev.target.results;
selectedhotel_name = "";
fetchOK = 1;
main_mc.resultRecordSet = ev.target.results;
}
function returnRowSet_Status(stat:Object) {
//接收错误
trace("接收到错误");
}
//初始化
function ini():Void {
if (this.inited != undefined) {
return;
} else {
var inited:Boolean = true;
GetRestaurantInfo();
}
}
ini();
3打开组件面板,将RemotingConnector组件拖放到舞台上创建一个实例(实际,只需放到库中就可以了)。
最后可以测试一下效果,可以看到与前面的例子功能相同。
Flash和Java结合开发的利器_《Java for Flash动态网站开发手札》_部分章节连载(4)
第06章 AMF-RPC for Java基础入门
在前面的章节,我们介绍了Flash如何通过中间件JSP与服务器之间实现数据交换,了解了Flash影片应用程序如何融入到网络应用环境的最一般原理,有了基本的创建具有网络交互功能Flash影片应用程序的基本知识。
这一章,我们将开始使用Flash的一个最重要的服务器组件AMF-RPC来实现与Flash影片应用程序的交互,用户可以感受到更加强烈的Flash网络应用程序“感觉”,从而可以更轻松的创建功能更强大的Flash网络应用程序——这就是“富媒体应用程序”。
使用Flash作为开发工具,我们现在可以开始学习怎样使用AMF-RPC创建更为强大而且易用的富媒体应用程序了。
6.1 AMF-RPC技术简介
AMF-RPC是使用AMF 数据格式实现的远程方法调用,Macromedia公司为此出品了三个个实现:Flash Remoting MX for J2EE(以前也被称为Flash Remoting MX for Java)、Flash Remoting MX for .NET和Flash Remoting MX for ColdFusion,并且开源社区也为AMF-RPC编写了一个在PHP架构下的实现,名为AMFPHP(也可以称为Flash Remoting MX for PHP)。
就如其它的RPC工具一样,AMF-RPC是一个应用程序服务器网关,它在Flash影片应用程序和远程服务之间提供一个相互通信的网络通道:在这个通道间传输的是AMF格式的数据(AMF是专用于Flash远程数据传输的一种数据格式);远程服务则包含各种应用服务技术(例如JavaBeans、ColdFusion组件和网页、ASP.NET网页或者Web服务等等)。
和其它的连接到外部数据提供者的技术相比,AMF-RPC的优点是不言而喻的。在前面一章我们介绍的像getURL、loadVariables、XML和XMLSocket等语句,它们都是使用的简单的HTTP功能,一般都离不开内建的类如Request和Response这样的语法,而AMF-RPC则有其独特的一面,总的说来有下列优点:
[1]易用。AMF-RPC可以对本地远程服务程序代码(Java,CFML,PHP和C#)的数据类型进行自动转换:可以转换成ActionScript代码数据类型,也可以转回本地远程服务程序代码数据类型。
[2]高性能。AMF-RPC使用Action Message Format(AMF)将Flash影片应用程序和远程服务之间的通信信息序列化。AMF是一个二进制格式,符合Simple Object Access Protocol(SOAP)协议格式,通信更加快速。
[3]可扩展性。AMF-RPC设计的时候集成了现有应用程序设计模式和最佳的开发实践,从而可以满足高度扩展性Flash网络应用程序设计要求。
要了解这些优点,最好是先来看一个简单的使用AMF-RPC创建的Flash网络应用程序。
现在马上出发
作者邀您访问他的BLOG: http://zhang-yafei.spaces.live.com(繁体)
作者邀您访问他的BLOG: http://blog.csdn.net/zhang_yafei/(简体)
Flash和Java结合开发的利器_《Java for Flash动态网站开发手札》_部分章节连载(3)
第Ⅱ篇 Flash网络应用程序和Flash Remoting
在第一篇,我们介绍了Java for Flash的基本原理,了解了怎样使用Flash内建的功能方法与Java实现交互,这种交互方式其实是一种极其简单的HTTP操作,来回传递的都是字符串格式的数据(XML也是字符串,需要解析为DOM)。
人们需要一种更为简洁的方式能够实现类似Native的操作,于是Flash Remoting便应运而生,这符合IT工业的一贯标准。
在这一篇,我们将介绍怎样使用包括XML-RPC、WDDX、SOAP和AMF-RPC(包括Flash Remoting MX和OpenAMF)等在内的Flash Remoting技术,开发人员可以更轻松的完成过去需要编写很多代码才能完成的任务。
本篇包含很多的章节,是本书的主体部分,主要就是介绍怎样使用各种Remoting工具实现Java for Flash的强大体验。
现在马上出发
作者邀您访问他的BLOG: http://zhang-yafei.spaces.live.com(繁体)
作者邀您访问他的BLOG: http://blog.csdn.net/zhang_yafei/(简体)
Flash和Java结合开发的利器_《Java for Flash动态网站开发手札》_部分章节连载(2)
第01章 开发和运行环境的安装与配置
《Java for Flash动态网站开发手札》又被称之为网络三剑客,它提供了使用Flash Player、XML和Java建立下一代网络应用程序最迅速、最大限度节省投资和最具有挑战性的方法组合,这一组合事实上包含四个方面:Flash Player的应用环境、XML的应用环境、Java应用环境以及这三个应用环境的相互关联。
在Flash Player、XML和Java这三剑客组成的软件运行环境中:Java是基础架构,它为Java应用程序提供运行环境,并且JSP、Servlet、JavaBeans、EJB、JMX MBean等程序组件都是在后端运行;Flash Player是Flash影片应用程序在前端运行的解释器(也是一个虚拟机),必须安装在客户端。Flash Remoting是Flash影片应用程序连接到Java程序的服务器和网关,它们之间的连接也是在后端运行。
本章我们就来介绍怎样安装和配置网络三剑客的开发和运行环境。
1.1新架构的优点
使用网络三剑客架构,事实上包含四个方面:Flash Player的应用环境、XML的应用环境、Java应用环境以及这三个应用环境的相互关联。
XML:标准的数据交换格式
尽管简单得令人难以置信,XML确实正在彻底改变我们创建和使用软件的方式。WEB彻底改变了用户与应用程序的交互方式:通过提供一种能使数据更易适配或更易转换的通用数据格式,XML正在彻底改变应用程序间的交互方式——或者更广义地说,计算机间的交互方式。包括SOAP和UDDI 在内的基于XML的标准,构成了应用程序间通信的开放式方法,此方法叫做XML WEB服务,而我更愿意称之为SOAP-RPC。
Java:开放的、成熟的和规范的基础架构
Java是目前市场上主流的企业及分布式应用程序开发平台,它是在Sun公司的领导下,多家公司参与共同制定的应用程序开发规范,正是因为它是一种规范、它的开放性,所以能够得到了业界的广泛支持。并且经历了几年的发展,Java已经经受住了市场的考验,成为一种成熟的开发平台。使用Java架构能够快速、高效的开发出可移植的、跨平台的、具有强大功能的企业级Web应用程序。
Java包含多种技术,它们之间互为补充,实现不同功能。包括:Java Servlet技术、Java Server Page(JSP)技术、JavaBeans技术、EJB技术等。
通过JSP(最终被编译成Servlet)和Servlet这一中间件,我们可以在Flash Player与服务端之间进行数据交换;而通过Java和Flash Remoting这两个中间件,使得创建服务端与Flash Player的关系变得更加容易,更加轻松自如。
Flash Player:跨平台跨设备的富媒体客户环境
Flash Player是功能强大的富媒体客户环境,只要平台或设备上正确的安装了Flash Player,用户就可以浏览使用Flash影片应用程序。
如同Java一样,Flash影片应用程序同样具备了一次开发,可以跨平台跨设备随意浏览的特性(而且不需要重新编译),这就是Flash的一个最大的优点。无论是在Windows、Mac、Linux、Unix还是在Symbian操作系统(Nokia应用于移动电话的一种操作系统)上,也不论你是在桌面PC上还是在掌上电脑或是移动电话上,Flash影片应用程序都能发挥它最大的特点。这一点我们想着重的作一下对比,如表1.1所示:
表1.1 Flash和Java对比
| | Flash影片应用程序 | Java应用程序 |
| 运行环境 | Flash Player(不同平台有不同版本) | JVM(Java虚拟机,不同平台有不同版本) |
| 编译 | P代码 | 字节码 |
| 不同平台 | 不需重新编译 | 不需要重新编译 |
| 开发难易程度 | 简单的图形化开发 | 图形化开发稍逊 |
Flash Player内建的ActionScript脚本语言是Flash Player的交互语言,它有几个版本,每种版本的ActionScript的语法和风格各不相同,但可以在同一个运行时下协调工作。Flash Player不但可以凭借内建的XML类加载和解析标准的XML数据。而且通过Flash Remoting MX很轻松的连接到一个应用程序开发人员要使用的远程服务端和WEB服务并实现数据交换,使得Flash影片应用程序的开发简单有效。
并且,随着Flash Media Server(简称FMS)的发布,用户更可以将视频和音频(包括实时视频和音频)集成到应用程序中,实现声音、图像、文字、数据同步传播。并且,你也可以将声音、图像、文字、数据等录制下来,通过eMail发送出去(需要编程实现)。
并且,FMS服务器和Flash Remoting MX可以无缝的集成到一块儿。有了FMS服务器和Flash Remoting MX的集成,你从而可以连接数据库以及驱动Java应用程序服务器以创建功能更强的Flash影片应用程序,并将其融入到Flash Player当中,从而为终端用户带来全新的富媒体应用程序体验。
和传统的基于HTML的浏览器应用程序相比,Flash影片应用程序在创建动态和复杂的、友好的用户界面方面有其独到的优势,包括:
1Flash Player运行时执行代码、传递数据和调用远程服务
2客户端展示逻辑与服务端应用程序逻辑相互独立
3有效的利用带宽,不需要刷新整个网页,使用矢量图形
4可以部署在多个平台和设备上,并且非常简单
这就是深具魅力的《Java for Flash动态网站开发手札》。
技巧与提示
用户必须区分Flash Remoting MX和Flash Remoting。Flash Remoting MX是Macromedia的一款产品,在本书中我时常称之为AMF-RPC(本书中同时介绍的OpenAMF是AMF-RPC的另一种实现)。
Flash Remoting是一个宽泛的定义,包括XML-RPC、WDDX-RPC、RTMP-RPC(也就是FMS)等都可以称为Flash Remoting。而Flash Remoting MX(AMF-RPC)仅是Flash Remoting中的一种。
现在马上出发
作者邀您访问他的BLOG: http://zhang-yafei.spaces.live.com(繁体)
作者邀您访问他的BLOG: http://blog.csdn.net/zhang_yafei/(简体)
Flash和Java结合开发的利器_《Java for Flash动态网站开发手札》_部分章节连载(1)
第Ⅰ篇 Java for Flash基础入门
学习任何技术都有一个基础知识,Java for Flash也不例外。本篇包含几个章节,介绍了Java for Flash的基本知识。
在第一章,我们介绍了如何安装和配置Java for Flash的开发和运行环境,这样,用户就可以开发Flash网络应用程序以实现和Java应用程序的交互。
在随后的几章,我们介绍了如何使用Java语言、如何使用JDBC结合数据库以及面向对象的Java开发。
而在第五章,我们开始使用传统的JSP网页作为中间件方法开发Flash网络应用程序,与服务器之间实现数据交换,了解了如何建立网络环境的最一般原理,有了基本的创建具有网络交互功能Flash影片应用程序的基本知识,这是实现使用Flash影片应用程序作为网络应用程序主体的一次“飞跃”。
现在马上出发
作者邀您访问他的BLOG: http://zhang-yafei.spaces.live.com(繁体)
作者邀您访问他的BLOG: http://blog.csdn.net/zhang_yafei/(简体)
Google 會對使用 Macromedia Flash 的網站建立索引嗎?
會的,Google 會對使用 Macromedia Flash 的網頁建立索引。不過,我們的檢索器可能會在產生 Flash 網頁索引時發生問題。如果您擔心網頁上的 Flash 內容會抑制 Google 檢索您網站的能力,您可以考慮使用如 Lynx 的文字瀏覽器來檢查您的網站。如果 Flash 此類的功能無法讓您以文字瀏覽器瀏覽您網站的所有內容,則當搜尋引擎的自動尋檢程式在檢索您的網站時就可能會有問題。
您可以考慮為我們的檢索器建立這些 Flash 網頁的 HTML 副本。如果您建立 HTML 副本,請務必加入一個可防止 Flash 網頁被檢索的 robots.txt 檔案,以確保我們的檢索器不會將這些網頁視為重複的內容。
最後,請考慮使用 Google Sitemaps,建立與提交您網頁的詳細 Sitemap。有了 Google Sitemaps,您就可以輕鬆地將所有您的 URL 提交至 Google 索引,並且取得關於您的網頁在 Google 上的曝光率的詳細報告。您可以使用 Google Sitemaps,將您目前的所有網頁及對這些網頁所做的任何變更自動通知我們。請注意,提交 Sitemap 不保證會我們會檢索您網站的所有網頁,或將其包含在我們的搜尋結果中。若要瞭解更多關於 Google Sitemaps 的資訊,請造訪 http://www.google.com/webmasters/sitemaps/about?hl=en 。
引自:http://www.google.com.tw/support/webmasters/bin/answer.py?answer=35267
《.NET for Flash动态网站开发手札》相关勘误、更新、下载(1)
129页,第8步.应该是"调整第1帧和第20帧上矩形的高度至最小".
129页,第6步.应该是"第1帧和第2帧创建两个关键帧".
谢谢qinglu008的来信。
《Java for Flash动态网站开发手札》相关勘误、更新、下载(1)
在书的81页第四行发现了一个文字错误-------webapp.aspx,应该是webapp.jsp才对。
[更正启示0002:]
在书的第一章前几段文字,由于编辑的不小心造成。实际的文章可以参考下面的连载帖子:
http://blog.csdn.net/zhang_yafei/archive/2007/01/03/1473185.aspx
不断更新中,我亦欢迎您直接在此留贴。谢谢!!!!
幾款值得關注的基於Flash的網路作業系統
有幾款值得關注的基於Flash的網路作業系統,下面列出來:
http://www.glidedigital.com/
http://desktoptwo.com/
http://www.goowy.com/
非常棒啊,值得試一下。
Flash和Java結合的方式總結(Flash和Java通訊)
《Java for Flash動態網站開發手札》內包含了明確地介紹了Flash和Java結合開發時要用到的各種技術,但是它比較太寬了,包含了web伺服器和Java應 用程式伺服器,下面我們在這裏做一個分隔出來的技術總結,怎樣在Flash和Java應用程式伺服器之間通訊:
[1]使用MovieClip物件的getURL、loadVariables、loadVariablesNum方法可以使用HTTP或HTTPS協定以URL編碼格式向Java應用程式伺服器傳遞和接收資料。
[2]使用LoadVars類的load、send和sendAndLoad方法可以使用 HTTP 或 HTTPS 協定以URL編碼格式向Java應用程式伺服器傳遞和接收資料。
[3]使用XML類的XML.send、XML.load和XML.sendAndLoad方法可以以XML格式向Java應用程式伺服器傳遞和接收資料,這還包括一些基於XML的變種形式,例如WDDX、SOAP等。
[4]使用XMLSocket類的XMLSocket.connect 和 XMLSocket.send方法可以創建和使用TCP/IP套接字連接從而以XML 格式向Java應用程式伺服器傳遞和接收資料。
[5]使用Connection類或者NetConnection的call方法可以使用AMF協定向Java應用程式伺服器傳遞和接收資料,這被稱為AMF-RPC的方式,還包括其他的變種形式,但都統稱為AMF-RPC方式。

