- 浏览: 511233 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
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实战)
Flex 支持多种与服务器端的通讯方式,包括 remote 和 socket 等高级数据通讯方式。 remote 采用 amf ( action message format )协议。 amt 是一种二进制格式,专用于 as 和服务器端通讯,比 http 通讯要快很多,而且支持多种数据类型,如 java , .net,php 等。本文将介绍如何使用 Flex RemoteObject components 调用服务器端 java 对象的方法。
Flex 客户端使用 RemoteObject
在 mxml 中声明一个 id 为 ro 的 RemoteObject ,在 as 中可以通过 ro 引用 RemoteObject 对象, destination 是服务器端暴露的 java 服务对象, Method 的 name 是 java 服务对象中的方法, result 是访问服务器方法的回调函数。本例中是使用 RemoteObject 访问服务器端 HelloWorld 的 sayHello 方法。
testHelloWorld.mxml 代码
<?xml version=”1.0″ encoding=”utf-8″?>
<mx:Application xmlns:mx=”http://www.adobe.com/2006/mxml”>
<mx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
[Bindable]
private var memberResult:Object;
private function say():void{
var user:User=new User();
user.setName(n.text);
user.setId(”testId”);
ro.sayHello(user);
}
public function handleResult(event:ResultEvent):void {
target.text=event.result as String;
}
]]>
</mx:Script>
<mx:RemoteObject id=”ro” destination=”HelloWorld”>
<mx:method name=” sayHello ” result=” handleResult (event)”/>
<mx:RemoteObject>
<mx:TextInput id=”n” change=”say()”/>
<mx:Label id=”target”/>
</mx:Application>
User.as 代码
package {
[RemoteClass(alias="cn.com. remote.test.User")]
public class User {
public var name:String;
public var id:String;
public function getName():String{
return name;
}
public function setName(name:String ):void {
this.name = name;
}
public function getId():String {
return id;
}
public function setId(id:String):void {
this.id = id;
}
}
}
定义服务器端 java 对象
HelloWorld.java 代码
package cn.com. remote.test;
public class HelloWorld {
public String sayHello(String name){
System.out.println(”**********sayHello(String name) in*************”);
System.out.println(”hello,”+name);
return “hello,”+name;
}
public User getUser(String name){
System.out.println(”**********getUser in*************”);
return new User(name,name+”Id”);
}
}
User.java 代码
package cn.com. remote.test;
public class User {
private String name;
private String id;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
}
配置服务器端 destination
使用 RemoteObject 与服务器端通讯,需要用到 Flex Date Services ,本文使用的是 BlazeDS server , BlazeDS 的使用本文不做详细说明,可参看 http://opensource.adobe.com/wiki/display/blazeds/BlazeDS/ 。
在 remoting-config.xml 中配置 destination ,增加如下代码
< destination id = “ helloWorld “ >
< properties >
< source > cn.com. remote.test .helloWorld </ source >
< factory > springFactory </ factory >
</ properties >
</ destination >
As 对象与 java 对象的转换
在 as 中调用 ro.sayHello 时,传入一个 as 对象 user ,服务器端将会把 user 对象转换为 java 对象 user 。同样,如果服务器端方法 return 的是 java User 对象, as 接收到的将是 as 的 User 对象。 [RemoteClass(alias="cn.com. remote.test.User")] 声明了 As user 对象与 java User 对象的对应关系。下面是基础类型或常用类的对应关系图。
需要注意到问题
flex remote 传递 object 参数和接受返回的 dojo 对象,应注意以下问题:
1.as 对象属性必须为 public 的
2.remote 调用的 java 方法时,参数不能作为区别不同方法的依据,也就是说, java 方法不
能重名
3.dojo 对象,必须有无参构造函数
4.as 对象需加 [RemoteClass(alias="cn.com. remote.test.User")]
评论
public class Student
{
private int sid;
private String sname;
private Classes classs //一个对象
}
AS文件怎么写 主要是Classes那里怎么写 对象怎么映射呢
请指教 谢谢
Class也是一样的,如果是单数对象就用Class名,如果是集合的话,就用ArrayCollection; as 对象文件的里面,不用写属性的get set方法,只需要将属性设为public,如果你想要修改as对象文件的属性取值方式,可以设置为private,然后用一个public set name() : String{}方法来返回name属性;
package{
[RemoteClass(alias="com.xxx.xxx.Student")]
public lass Student
{
public var sid : Number;
private var _sname : String;
public var classs : Classes;
public set Name(name : String) : void
{
_sname = name;
}
public get Name () : String
{
return _sname;
}
}
}
public class Student
{
private int sid;
private String sname;
private Classes classs //一个对象
}
AS文件怎么写 主要是Classes那里怎么写 对象怎么映射呢
请指教 谢谢
发表评论
-
十个Flex/Air疑难杂症及解决方案简略
2010-05-31 17:17 3346最近去一家台企面 ... -
Windows环境下配置+运行red5源码+AS3连接red5简单示例
2010-04-19 13:39 5185Windows环境下配置+运行red5源码+AS3连接red5 ... -
使用aperture框架让AS3与C++通信,执行本地代码
2010-04-08 16:48 3260我们都知道,AIR的效果是非常出色的,这也是大家喜欢她的原因, ... -
SQLITE入门至精通
2010-04-07 11:13 3028关键 ... -
教你解析FLEX JSON中的一个问题 关于键值 和键
2010-04-01 15:25 2328字符串:message = ' "param&quo ... -
air写文件保存在安装目录
2010-03-31 15:46 3224AIR中..保存文件我们般会像下面这样操作 var f ... -
弱弱的一个小问题,bitmapdata pngencoder base64 bytearray
2010-03-31 14:16 1156好久没写东东了,呵呵。随便写点点。关于bitmapdata如何 ... -
FLASH教程:SWF间的双向通信
2010-03-02 18:23 1363假设有一个主 SWf 名为 m ... -
如何把as文件生成swf格式文件
2010-03-02 18:22 5292一,从http://opensource.adobe.com/ ... -
Flex数据交互方法 :httpservice, webservice, RemoteObject, socket
2010-02-27 17:06 1916【转载】 文章分类:Flash编程 http://h ... -
理解Flash Player 9垃圾回收机制
2010-02-02 18:27 1089理解Flash Player 9垃圾回 ... -
BlazeDS入门教程-很详细-赞原创作者一个
2010-01-11 23:51 1723什么是BlazeDS呢?BlazeDS是一个基于服务器的Ja ... -
一些漂亮的Flex主题下载
2010-01-11 10:31 6180一些漂亮的Flex主题下载1Digg meWindows Cl ... -
通过Stratus 服务器在Flash Player中使用RTMFP 开发 点对点应用(一)
2010-01-08 17:43 5402作者:Jozsef Vass 译者:巴巴鲁 ... -
ActionScript 3.0著名开源库 大集合
2009-12-29 17:26 2048这篇文章开始于对Adrian ... -
Flex 读取XML配置文件总结
2009-11-19 11:45 1990在Flex中我 ... -
一个list定义组件,网上找了很久没有,自己做了一个。
2009-10-29 11:55 1254一个list定义组件,网上找了很久没有,自己做了一个。希望对大 ... -
flex 在线录制视频语音
2009-09-12 17:45 3651<?xml version="1.0" ... -
flex 蒙板 遮罩
2009-09-11 17:09 3876方法一 <mx:Image source=&q ... -
如何自定义FLEX3的loading进度条
2009-09-05 10:17 1756第一种:修改下载进度的文字为中文 建立扩展至 mx.prel ...
相关推荐
在本文中,我们将深入探讨如何使用Flex中的RemoteObject组件封装后与Java应用程序进行通信。RemoteObject是Adobe Flex框架的一部分,它允许Flex客户端与服务器端的业务逻辑进行交互,通常是通过AMF(Action Message ...
在Flex开发中,为了实现客户端(Flex应用)与服务器端(通常是Java应用)的数据交互,开发者经常使用`RemoteObject`组件。本篇文章将深入探讨如何使用`RemoteObject`与Java进行JSON格式的数据交换,以便更好地理解和...
在本文中,我们将深入探讨如何使用Flex 4与Java进行通信,并通过三种不同的方法实现这一目标:RemoteObject、HTTPService和WebService。 1. Flex与普通Java类通信:RemoteObject RemoteObject是Flex中用于与远程...
eclipse3.7 + flash builder 4.5插件 + tomcat6.X调试通过,一个flex remoteobject简单例子(BlazeDS)。实际导入后指定flex server--java settings--blazeds.war的路径
### Flex中RemoteObject与Java的通信 在Flex开发过程中,实现客户端与服务器端的数据交互是一项基本而又关键的任务。其中,`RemoteObject`是Adobe Flex框架提供的一个强大的组件,它允许Flex应用程序通过AMF...
7. **编写Flex客户端代码**:在Flex MXML或ActionScript代码中,使用RemoteObject或WebService组件来调用Java服务的方法。这些组件可以自动处理AMF的序列化和反序列化过程。 8. **测试交互**:运行Flex应用程序,...
### Flex与Java交互详解 #### 一、引言 随着技术的发展,前端开发与后端服务之间的交互变得越来越重要。Flex作为一种流行的富互联网应用程序(RIA)框架,与Java结合使用时能够实现强大的功能。本文将详细介绍如何...
学习如何使用Flex与Java的交互技术,比如使用RemoteObject或WebService组件来调用Java服务的方法,获取或更新服务器端的数据。此外,理解状态管理和数据绑定也是必要的,这可以帮助你更好地控制UI的更新,确保应用的...
在本文中,我们将深入探讨Flex 4与Java交互的三种主要方式:通过RemoteObject与普通Java类通信、使用HTTPService与服务器交互以及通过WebService与Web服务通信。这些技术在开发富互联网应用程序(RIA)时,允许前端...
在本文中,我们将探讨如何在Flex 4环境中与Java进行交互,主要涉及三种通信方式:RemoteObject、HTTPService以及WebService。这些交互方式允许Flex客户端与后端Java应用进行数据交换,从而实现丰富的用户界面和强大...
标题中的“Flex与Java交互 远程调用方式”指的是在Adobe Flex应用程序中与Java后端进行通信的技术。Flex是一种基于ActionScript的开源框架,用于构建富互联网应用程序(RIA),而Java是后端开发的常用语言。两者之间...
Flex与Java的通信是Web应用...在实际项目中,HelloFlexPro可能是一个演示或示例项目,用于展示如何使用Blazeds RemoteObject组件进行Flex与Java的交互。开发者可以通过研究该项目的源码,进一步加深对这一技术的理解。
- 在Flex项目中,使用`mx:RemoteObject`标签定义与Java服务的连接,指定服务端的方法名和数据类型。 - 在Java端,你需要创建对应的Service接口和服务实现,处理Flex发来的请求并返回数据。 5. **测试和调试**: ...
在Flex和Java的集成应用中,RemoteObject是关键的通信组件,它允许Flex客户端与Java后台服务进行数据交换。 RemoteObject是Flex框架中的一个关键组件,它通过AMF(Action Message Format)协议,提供了一种高效、轻...
当所有配置完成后,我们可以启动Tomcat服务器,访问`http://localhost:8080/FlexJava/FlexJava-debug/FlexJava.html`来查看并测试应用程序。如果一切正常,用户在文本框中输入内容,点击按钮,应该能看到一个弹出的...
本文主要探讨了使用Flex作为富互联网应用程序(RIA)前端与Java服务端进行交互的反射机制。Flex以其丰富的用户体验和灵活性,与Java的强大功能相结合,形成了高效的应用程序开发模式。BlazeDS作为一种轻量级的服务器...
Flex与Java数据交互是Web开发中的一个重要话题,它涉及到客户端与服务器端的数据交换技术。Flex是一种基于Adobe AIR和Flash Player运行时的富互联网应用程序(RIA)开发框架,主要用于创建动态、交互性强的用户界面...
标题中的"flex与java交互 blaze+cairngorm框架实现用户登录"是指使用BlazeDS作为数据交换的桥梁,Cairngorm作为前端的架构指导,来实现一个用户登录功能。下面将详细讲解这两个技术以及如何在MySQL数据库中处理登录...