flex+java+remoteObject
Flex是Adobe开发的一种开源的富互联网应用程序(RIA)框架,主要用于构建交互性强、用户体验良好的桌面和移动应用程序。Java则是一种广泛使用的多平台编程语言,它提供了丰富的类库和强大的服务器端处理能力。在Flex和Java的集成应用中,RemoteObject是关键的通信组件,它允许Flex客户端与Java后台服务进行数据交换。 RemoteObject是Flex框架中的一个关键组件,它通过AMF(Action Message Format)协议,提供了一种高效、轻量级的数据传输方式。AMF是一种二进制格式,能将数据序列化为更小的体积,从而提高网络传输效率。在Flex和Java的远程调用中,RemoteObject扮演了中间人的角色,它使得Flex客户端可以像调用本地对象一样调用Java服务器上的方法。 要实现Flex与Java的RemoteObject通信,首先需要在Flex客户端创建一个RemoteObject实例,并指定其目标端点。目标端点通常是Java服务器上的一个服务URL,通常由 BlazeDS 或 LCDS (LiveCycle Data Services) 提供。BlazeDS是Adobe提供的免费服务器端组件,它可以将Java服务暴露为AMF端点,便于Flex客户端访问。 在Flex代码中,定义RemoteObject时需要设置`mx.rpc.remoting.RemoteObject`的`destination`属性,这个属性对应于Java服务器上配置的服务名。然后,你可以通过RemoteObject的`call`方法来调用Java服务的方法,例如: ```actionscript var remoteService:RemoteObject = new RemoteObject(); remoteService.destination = "javaService"; remoteService.javaMethod.addEventListener(ResultEvent.RESULT, onResult); remoteService.javaMethod.addEventListener(FaultEvent.FAULT, onFault); remoteService.javaMethod(); ``` 在Java端,你需要创建一个服务接口和其实现类。服务接口通常定义了客户端可以调用的方法,而实现类则提供了具体的功能。例如,你可以创建一个名为`JavaService`的接口和`JavaServiceImpl`的实现类,然后在BlazeDS的配置文件(如services-config.xml)中将这个服务暴露为AMF端点。 ```java public interface JavaService { public String javaMethod(); } public class JavaServiceImpl implements JavaService { @Override public String javaMethod() { return "Hello, RemoteObject!"; } } ``` 在BlazeDS的配置文件中,你需要添加相应的channel设置,指定使用HTTP或HTTPS协议,以及AMF协议。然后,配置服务暴露,如: ```xml <service id="javaService"> <properties> <destinationId>javaService</destinationId> </properties> <adapter> <class>flex.messaging.adapters.java.JavaAdapter</class> </adapter> <message-listeners> <message-listener class="flex.messaging.MessageBrokerServlet" /> </message-listeners> </service> ``` 完成上述步骤后,当Flex客户端调用`remoteService.javaMethod()`时,就会通过AMF协议向Java服务器发送请求,服务器接收到请求后执行`JavaServiceImpl.javaMethod`,并将返回结果反序列化回Flex客户端。 总结来说,"flex+java+remoteObject"的组合是实现Flex客户端与Java后台通信的常见方式。通过RemoteObject,开发者可以轻松地在Flex界面中调用Java服务,实现数据的交互和业务逻辑的处理。这种跨平台的解决方案为开发具有丰富用户界面的RIA应用提供了强大支持。
- 1
- ylf19912014-03-26资源不错,源代码看得懂,是一个能够快速掌握java与flex前后台交互的例子
- raulhelang2013-06-29资源希望对我目前开发的项目有用,谢谢
- fengjun3326142013-03-13资源不错,源代码看得懂,是一个能够快速掌握java与flex前后台交互的例子,里面有两个工程,一个flex的,一个java的,两者也可结合到一个工程使用。挺好。。
- 粉丝: 4
- 资源: 7
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- (源码)基于Spring Boot框架的博客管理系统.zip
- (源码)基于ESP8266和Blynk的IR设备控制系统.zip
- (源码)基于Java和JSP的校园论坛系统.zip
- (源码)基于ROS Kinetic框架的AGV激光雷达导航与SLAM系统.zip
- (源码)基于PythonDjango框架的资产管理系统.zip
- (源码)基于计算机系统原理与Arduino技术的学习平台.zip
- (源码)基于SSM框架的大学消息通知系统服务端.zip
- (源码)基于Java Servlet的学生信息管理系统.zip
- (源码)基于Qt和AVR的FestosMechatronics系统终端.zip
- (源码)基于Java的DVD管理系统.zip