论文部分内容阅读
摘要:Flex 是一个高效率的开放源码框架,可用于构建和维护在所有主流浏览器,桌面和操作系统部署的极具表现力的WEB应用程序。用java做出一个应用,可以通过BlazeDS把java应用用Flex工具以WEB应用程序的形式展现出来。
关键词:BlazeDS;Flex;Java;通讯;技术
中图分类号: 文献标识码:A 文章编号:1007-9599 (2012) 11-0000-02
Flex是Adobe公司推出的一系列产品和技术,是目前最流行的富互联网应用程序开发技术之一。在Flex之前,RIA应用程序是在flash平台开发的。然而,为了吸引更多的JSP、ASP、PHP等开发者,Macromedia公司推出了Flex技术。Flex 是一个高效率的开放源码框架,可用于构建和维护在所有主流浏览器,桌面和操作系统部署的极具表现力的WEB应用程序。Flex用非常简单的MXML描述界面,与使用HTML非常相似,但是MXML更加规范化、标准化。Flex通过java或者.NET等非Flash途径解释.mxml文件,组织文件,并生成相应的.swf文件,最后在HTML或Flash Player中运行该文件。
Flex 可以创建一种能增强用户体验的应用程序,可以实现Web Service、远程对象、拖放、列排序、图表、内建动画效果和其他简单互动界面等功能。和传统的HTML应用程序的用户体验相比,Flex显然具有强大的优势。
Flex和j2EE/.NET/PHP其实也没多大关系,可以用java做出一个应用,并把Flex的技术融合到 Java里面,也可以用.NET的技术做出一个应用。总之,Flex解决了Web应用中最繁琐的Web客户端问题。Flex应用程序需要在Flash Player上展开。Flash Player是一个用于内容和应用程序的轻量型运行库,它是基于许多Web标准而构建的。Flash Player具有跨平台性,可运行于多个操作系统,是被广泛运行的软件技术。全球98%的计算机都安装了Flash Player,因此Flex可以不受平台限制地得到广泛的应用。
Flex目前最新版本是Flex 4,执行于Flash Player 10,所以计算机上需要安装Flash Player 10 及以上的产品。
下面探讨一下基于BlazeDS实现Flex和Java通讯。BlazeDS是连接Java和Flex的工具,是LCDS的开源版本,是完全免费的。首先在Adobe官网下载BlazeDS4,在MyEclipse中新建一个Web Service工程“Al”。新建包com.lll.almetal.dao.impl,然后
在其中新建一个HelloWorld类。
HelloWorld类通过定义一个sayHelloWorld方法接收外部参数,返回字符串“JAVA say:”與外部参数连接的字符串。Flex客户端调用这个方法获得返回结果。
解压缩blazeds.war文件,将压缩后的WEB-INF目录复制到WEB工程BlazeDSServerWebRootWEB-INFflex emoting-config.xml文件,在文件中定义一个远程服务,这样Flex应用程序才能调用这个远程服务。在节点下加入元素,定义一个服务目标,程序如下所示:
com.demo.HelloWorld
Id属性用于定义Flex应用程序可以访问的服务目标,sourse属性定义该目标所指向的类。这里HelloWorld即代表com.demo.HelloWorld类。
服务器端的应用程序已经完成了,部署tomcat服务器并启动它。
在Flex中,实现AMF-RPC应用要通过组件完成,使用该组件可以访问应用服务器上的类。定义格式如下:
Destination属性指定服务的目标,该属性的值一定要和java工程的remoting-config.xml中的destination的id一样。
新建Flex项目“BlazeDSExample”,在“服务器技术”一栏选择“应用服务器类型”为“java”,并选择“BlazeDS”为远程对象访问服务,“根文件夹”设为Tomcat服务器下的文件夹,“根URL”设为“http://localhost:8080/ BlazeDSServer” 。
编写BlazeDSExample.mxml文件,内容如下:
xmlns:mx="library://ns.adobe.com/flex/mx">
import mx.controls.Alert;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
//调用Java服务器端的方法
private function hello():void
{
//通过RemoteObject的对象test,直接调用Java端的方法
test.sayHelloWorld(inputText.text);
}
//调用成功后处理事件
Private function resultHandler(event:ResultEvent):void
{
//显示Java 服务器返回结果
var helloResult:String = event.result as String;
result_txt.text = helloResult ;
}
]] >
【参考文献】
[1] Flex 4 开发实践 郑阿奇主编 电子工业出版社
[2]Flex +jsp Web 应用开发实战详解 王黎 吴越胜 冉小雯等编著
关键词:BlazeDS;Flex;Java;通讯;技术
中图分类号: 文献标识码:A 文章编号:1007-9599 (2012) 11-0000-02
Flex是Adobe公司推出的一系列产品和技术,是目前最流行的富互联网应用程序开发技术之一。在Flex之前,RIA应用程序是在flash平台开发的。然而,为了吸引更多的JSP、ASP、PHP等开发者,Macromedia公司推出了Flex技术。Flex 是一个高效率的开放源码框架,可用于构建和维护在所有主流浏览器,桌面和操作系统部署的极具表现力的WEB应用程序。Flex用非常简单的MXML描述界面,与使用HTML非常相似,但是MXML更加规范化、标准化。Flex通过java或者.NET等非Flash途径解释.mxml文件,组织文件,并生成相应的.swf文件,最后在HTML或Flash Player中运行该文件。
Flex 可以创建一种能增强用户体验的应用程序,可以实现Web Service、远程对象、拖放、列排序、图表、内建动画效果和其他简单互动界面等功能。和传统的HTML应用程序的用户体验相比,Flex显然具有强大的优势。
Flex和j2EE/.NET/PHP其实也没多大关系,可以用java做出一个应用,并把Flex的技术融合到 Java里面,也可以用.NET的技术做出一个应用。总之,Flex解决了Web应用中最繁琐的Web客户端问题。Flex应用程序需要在Flash Player上展开。Flash Player是一个用于内容和应用程序的轻量型运行库,它是基于许多Web标准而构建的。Flash Player具有跨平台性,可运行于多个操作系统,是被广泛运行的软件技术。全球98%的计算机都安装了Flash Player,因此Flex可以不受平台限制地得到广泛的应用。
Flex目前最新版本是Flex 4,执行于Flash Player 10,所以计算机上需要安装Flash Player 10 及以上的产品。
下面探讨一下基于BlazeDS实现Flex和Java通讯。BlazeDS是连接Java和Flex的工具,是LCDS的开源版本,是完全免费的。首先在Adobe官网下载BlazeDS4,在MyEclipse中新建一个Web Service工程“Al”。新建包com.lll.almetal.dao.impl,然后
在其中新建一个HelloWorld类。
HelloWorld类通过定义一个sayHelloWorld方法接收外部参数,返回字符串“JAVA say:”與外部参数连接的字符串。Flex客户端调用这个方法获得返回结果。
解压缩blazeds.war文件,将压缩后的WEB-INF目录复制到WEB工程BlazeDSServerWebRootWEB-INFflex emoting-config.xml文件,在文件中定义一个远程服务,这样Flex应用程序才能调用这个远程服务。在
Id属性用于定义Flex应用程序可以访问的服务目标,sourse属性定义该目标所指向的类。这里HelloWorld即代表com.demo.HelloWorld类。
服务器端的应用程序已经完成了,部署tomcat服务器并启动它。
在Flex中,实现AMF-RPC应用要通过
Destination属性指定服务的目标,该属性的值一定要和java工程的remoting-config.xml中的destination的id一样。
新建Flex项目“BlazeDSExample”,在“服务器技术”一栏选择“应用服务器类型”为“java”,并选择“BlazeDS”为远程对象访问服务,“根文件夹”设为Tomcat服务器下的文件夹,“根URL”设为“http://localhost:8080/ BlazeDSServer” 。
编写BlazeDSExample.mxml文件,内容如下:
import mx.controls.Alert;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
//调用Java服务器端的方法
private function hello():void
{
//通过RemoteObject的对象test,直接调用Java端的方法
test.sayHelloWorld(inputText.text);
}
//调用成功后处理事件
Private function resultHandler(event:ResultEvent):void
{
//显示Java 服务器返回结果
var helloResult:String = event.result as String;
result_txt.text = helloResult ;
}
]] >
【参考文献】
[1] Flex 4 开发实践 郑阿奇主编 电子工业出版社
[2]Flex +jsp Web 应用开发实战详解 王黎 吴越胜 冉小雯等编著