Flex RemoteObject(转载)
发布时间:2020-12-15 05:13:18 所属栏目:百科 来源:网络整理
导读:? Flex支持多种与服务器端的通讯方式,包括remote和socket等高级数据通讯方式。 ?remote 采用amf(action message format)协议。amt是一种二进制格式,专用于as和服务器端通讯,比http通讯要快很多,而且支持多种数据类型,如java,.net,php等。本文将介绍
?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代码
|