- 浏览: 516302 次
- 性别:
- 来自: 深圳
-
文章分类
最新评论
-
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 3386最近去一家台企面 ... -
Windows环境下配置+运行red5源码+AS3连接red5简单示例
2010-04-19 13:39 5203Windows环境下配置+运行red5源码+AS3连接red5 ... -
使用aperture框架让AS3与C++通信,执行本地代码
2010-04-08 16:48 3283我们都知道,AIR的效果是非常出色的,这也是大家喜欢她的原因, ... -
SQLITE入门至精通
2010-04-07 11:13 3063关键 ... -
教你解析FLEX JSON中的一个问题 关于键值 和键
2010-04-01 15:25 2352字符串:message = ' "param&quo ... -
air写文件保存在安装目录
2010-03-31 15:46 3255AIR中..保存文件我们般会像下面这样操作 var f ... -
弱弱的一个小问题,bitmapdata pngencoder base64 bytearray
2010-03-31 14:16 1184好久没写东东了,呵呵。随便写点点。关于bitmapdata如何 ... -
FLASH教程:SWF间的双向通信
2010-03-02 18:23 1401假设有一个主 SWf 名为 m ... -
如何把as文件生成swf格式文件
2010-03-02 18:22 5331一,从http://opensource.adobe.com/ ... -
Flex数据交互方法 :httpservice, webservice, RemoteObject, socket
2010-02-27 17:06 1974【转载】 文章分类:Flash编程 http://h ... -
理解Flash Player 9垃圾回收机制
2010-02-02 18:27 1113理解Flash Player 9垃圾回 ... -
BlazeDS入门教程-很详细-赞原创作者一个
2010-01-11 23:51 1761什么是BlazeDS呢?BlazeDS是一个基于服务器的Ja ... -
一些漂亮的Flex主题下载
2010-01-11 10:31 6208一些漂亮的Flex主题下载1Digg meWindows Cl ... -
通过Stratus 服务器在Flash Player中使用RTMFP 开发 点对点应用(一)
2010-01-08 17:43 5423作者:Jozsef Vass 译者:巴巴鲁 ... -
ActionScript 3.0著名开源库 大集合
2009-12-29 17:26 2078这篇文章开始于对Adrian ... -
Flex 读取XML配置文件总结
2009-11-19 11:45 2015在Flex中我 ... -
一个list定义组件,网上找了很久没有,自己做了一个。
2009-10-29 11:55 1278一个list定义组件,网上找了很久没有,自己做了一个。希望对大 ... -
flex 在线录制视频语音
2009-09-12 17:45 3688<?xml version="1.0" ... -
flex 蒙板 遮罩
2009-09-11 17:09 3894方法一 <mx:Image source=&q ... -
如何自定义FLEX3的loading进度条
2009-09-05 10:17 1769第一种:修改下载进度的文字为中文 建立扩展至 mx.prel ...
相关推荐
Flex是Adobe公司开发的一种富互联网应用程序(RIA)框架,它主要使用ActionScript编程语言和MXML标记语言,用于创建交互式、动态的用户界面。在本文中,我们将深入探讨Flex的相关文档以及它如何与后台数据进行交互。...
在探讨Flex如何与Java集成以及通过不同方式(如Web Service、HTTP及RemoteObject等)获取Java的数据服务时,我们首先需要了解Flex与Java集成的基础概念。 #### Flex与Java集成基础 Flex是一种用于构建高度交互式...
5. **客户端分页组件**:在Flex4中,你可以使用`mx.controls.Pager`或`spark.components.Pagination`组件来提供用户界面,让用户可以翻页。这些组件与数据视图(如`List`或`DataGrid`)配合,根据用户的分页操作更新...
然而,即使是使用`RemoteObject`进行数据交互时触发的`invoke`事件来锁定界面,在实际应用中仍存在异步行为。对于地图交互来说,异步设计更加符合实际需求。 #### 五、结论 ArcGIS Flex API 中的异步特性是构建...
稳压罐sw16_三维3D设计图纸_包括零件图_机械3D图可修改打包下载_三维3D设计图纸_包括零件图_机械3D图可修改打包下载.zip
内容概要:本文详细介绍了利用递推最小二乘法(RLS)进行永磁同步电机参数辨识的方法及其MATLAB仿真过程。首先解释了RLS算法的优势,如不需要概率模型、计算量适中以及适用于嵌入式系统的实时参数更新。接着展示了将电机电压方程转换为标准形式Y=φθ的具体步骤,并提供了核心的RLS迭代代码。文中还讨论了仿真过程中的一些关键技术细节,如遗忘因子的选择、协方差矩阵的初始化和更新方式、电流信号的处理方法等。最终给出了仿真结果,显示电阻和电感的辨识误差分别达到了0.08%和0.12%,并指出了实际应用中需要注意的数据同步和数值稳定性问题。 适合人群:从事电机控制研究的技术人员、研究生及以上学历的学生。 使用场景及目标:①帮助研究人员理解和掌握RLS算法在电机参数辨识中的应用;②提供详细的仿真代码和配置建议,便于快速搭建实验环境;③指导如何优化算法性能,提高参数辨识精度。 其他说明:本文不仅涵盖了理论推导,还包括了大量的实践经验分享和技术细节探讨,有助于读者全面理解RLS算法的实际应用。同时,文中提到的仿真方案可以方便地移植到DSP平台,进一步扩展了其实用价值。
零起点Python大数据与量化交易
管道清污机器人sw16可编辑_三维3D设计图纸_包括零件图_机械3D图可修改打包下载_三维3D设计图纸_包括零件图_机械3D图可修改打包下载.zip
电子仿真教程,从基础到精通,每个压缩包15篇教程,每篇教程5000字以上。
电子仿真教程,从基础到精通,每个压缩包15篇教程,每篇教程5000字以上。
1、文件说明: Centos8操作系统thai-scalable-garuda-fonts-0.6.5-1.el8.rpm以及相关依赖,全打包为一个tar.gz压缩包 2、安装指令: #Step1、解压 tar -zxvf thai-scalable-garuda-fonts-0.6.5-1.el8.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm
内容概要:本文详细介绍了利用ABAQUS进行滑坡和沉降对埋地管道影响的有限元分析方法。主要内容涵盖了几何建模、材料属性定义、接触设置、边界条件与加载等方面的技术细节。通过具体的Python脚本示例展示了如何构建模型,并深入探讨了滑坡和沉降条件下管道的应力、应变分布及其潜在破坏机制。此外,还分享了一些实战经验和优化技巧,如材料模型选择、接触条件设置、边界条件处理等,强调了这些因素对结果准确性的重要影响。 适合人群:从事地下管道工程设计、施工及维护的专业技术人员,尤其是那些希望深入了解滑坡和沉降对管道影响的研究人员和技术专家。 使用场景及目标:适用于评估和预测滑坡和沉降对埋地管道造成的力学响应,帮助工程师们更好地理解和应对复杂的地质灾害环境,从而提高管道系统的安全性与稳定性。 其他说明:文中提供的Python代码片段仅为示意,具体实施时需结合ABAQUS的实际接口和项目需求进行适当调整。同时,对于大规模模型的计算,建议使用高性能计算资源以确保效率和精度。
Java一天面试突击,迅速掌握Java常见面试题
莲子去壳机设计模型SW10_三维3D设计图纸_包括零件图_机械3D图可修改打包下载_三维3D设计图纸_包括零件图_机械3D图可修改打包下载.zip
MFRC-522+RC522+RFID射频+IC卡感应模块
内容概要:《学术研究提示设计 50 招》是一份详尽的指南,旨在帮助研究人员提高学术写作和研究效率。该文档涵盖了从论文撰写、润色、翻译、查重降重、参考文献管理、投稿审稿到文献阅读等多个方面的具体操作指令。每一章节均针对特定任务提供了详细的步骤和注意事项,例如如何撰写标题、摘要、致谢,如何进行英文润色、中英翻译,以及如何优化逻辑结构等。文档还介绍了如何利用AI工具进行文献分析、术语表提取和研究方向探索等内容,为研究者提供了全面的支持。 适合人群:适用于学术研究人员,特别是那些需要撰写、润色和提交学术论文的研究者,包括研究生、博士生及高校教师等。 使用场景及目标:① 提供一系列具体的指令,帮助研究者高效完成论文的各个部分,如撰写标题、摘要、致谢等;② 提供润色和翻译的详细指导,确保论文语言的准确性和专业性;③ 提供查重降重的方法,确保论文的原创性;④ 提供参考文献管理和投稿审稿的指导,帮助研究者顺利发表论文;⑤ 利用AI工具进行文献分析、术语表提取和研究方向探索,提高研究效率。 阅读建议:此资源不仅提供了具体的指令和方法,更重要的是引导研究者如何思考和解决问题。因此,在学习过程中,不仅要关注具体的步骤,还要理解背后的原理和逻辑,结合实际案例进行实践和反思。
项目optionc-20250409
2023年c语言程序设计基本概念考点归纳.doc
电子仿真教程,从基础到精通,每个压缩包15篇教程,每篇教程5000字以上。
内容概要:本文详细介绍了使用Matlab进行模拟和数字滤波器设计的方法,涵盖了巴特沃斯、切比雪夫等多种经典滤波器类型。首先讲解了模拟滤波器的设计,如巴特沃斯滤波器的通带平坦性和切比雪夫滤波器的通带波纹特性,并提供了具体的代码示例。接着讨论了数字滤波器的设计,包括IIR滤波器的递归特性和FIR滤波器的线性相位特性,同样附有详细的代码实现。文中还特别强调了不同类型滤波器之间的转换方法以及设计过程中常见的注意事项,如频率归一化、阶数选择等。最后推荐了一些实用的Matlab工具,如fvtool和FDATool,帮助用户更直观地理解和调试滤波器设计。 适合人群:具有一定信号处理基础和技术背景的研究人员、工程师及学生。 使用场景及目标:适用于需要进行滤波器设计的实际工程应用,如通信系统、音频处理等领域。目标是让读者掌握滤波器设计的基本原理和具体实现方法,能够独立完成滤波器的设计和调试。 其他说明:文章不仅提供了理论知识,还通过大量实例代码帮助读者更好地理解和应用所学内容。建议读者在实践中多尝试不同的参数配置,以加深对滤波器特性的理解。