之前简单介绍了利用PHPRPC发布服务,使用JAVA/JS客户端进行远程调用.那么作为RIA的箭头,任何服务当然也离不开与FLEX地交互.
接下来是FLEX客户端地调用,界面很简单,一个面板+一个按钮,按钮点击事件中开始调用服务器端服务,服务器端代码和之前的一样:
public class User
{
public function User()
{
}
public var name:String;
public var password:String;
}
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute">
<mx:Panel x="102" y="24" width="590" height="301" layout="absolute">
<mx:Button x="112" y="194" label="获得" id="btn" click="test()"/>
</mx:Panel>
<mx:Script>
<![CDATA[
import org.phprpc.PHPRPC_Client;
import mx.controls.Alert;
private static const URL:String = "http://localhost:8888/t/t.do?m=test";
//按扭事件
private function test():void{
var ps:PHPRPC_Client = new PHPRPC_Client(URL,["sayHello","sayGoodBye","showUser","getUser"]);
ps.sayGoodBye();//调用sayGoodBye
//调用sayHello
ps.sayHello("fw",function(result:*){
Alert.show(result);
});
//调用showUser 参数为一个FLEX对象 会自动转化
var user:User = new User();
user.name="fw";
user.password = "123";
ps.showUser(user);
//调用getUser 自动将返回的服务器端User对象转为json对象
ps.getUser(function(result:*){
Alert.show(result.name);
});
}
]]>
</mx:Script>
</mx:Application>
可以发现,几乎和JS调用的代码完全一样,只不过由JSON对象变成了FLEX对象,同样地,无需配置,只需要解压之前下载的针对AS3.0的版本的压缩文件,将里面的"PHPPRC_AS3.swc"添加进构建路径即可.
一点小小的遗憾是在PHPRPC_Client.as的源代码中对应服务URL和函数名数组的属性都是private的,因此除非修改PHPRPC_Client的源代码加上setter和getter对应的属性,否则将无法以MXML标签的形式使用PHPRPC_Client.不过话说回来通过AS来使用PHPRPC_Client本来就非常简单......
分享到:
相关推荐
10. **学习资源**:提供的“Flex与Java通讯-1.exe”和“Flex与Java通讯-2.exe”很可能是教学视频,而“flex连接java.TXT”可能是配套的代码示例或笔记,帮助学习者深入理解并实践Flex与Java的交互技术。 以上是关于...
然而,SOAP的复杂性和重量级特性使其在某些场景下显得效率较低,不适合轻量级和高并发的应用。 相反,REST(表述性状态转移)是一种轻量级的架构风格,它基于HTTP协议,强调资源的识别和操作。RESTful Web服务将...
这种方式更轻量级,易于理解和实现。 四、数据绑定和数据管理 在Flex中,我们可以利用数据绑定技术将HTTPService的结果直接映射到UI组件,简化了数据展示的过程。同时,Flex提供了ArrayCollection类,可以方便地...
标题提到的“as3-soap-client”是一个轻量级的解决方案,特别适合那些希望在AS3项目中集成SOAP通信的开发者。描述中指出,该客户端是使用Flash Builder 4.7开发的,这是一个基于Eclipse的集成开发环境,专为Flex和AS...
REST是一种轻量级的Web服务交互方式,基于HTTP协议,通过GET和POST方法来获取和提交数据。在Flex中,使用URLRequest类来指定服务端URL,URLVariables类存储请求参数,URLRequestMethod类定义请求类型(POST或GET),...
这些工具在Web服务开发中扮演着重要角色,Axis2是一个流行的Apache项目,用于构建和部署Web服务,Tomcat是一个轻量级的Java应用服务器,而Eclipse则是一个广泛使用的集成开发环境(IDE)。 压缩包中的文件 "用axis2...
1. **AMF通信**:AMF是Adobe专为Flash/Flex设计的一种轻量级二进制消息格式。使用AMF,Flex客户端可以通过Flash Remoting与Java服务器进行通信,提供低延迟、高效率的数据传输。Flex SDK包含一个名为BlazeDS的组件,...
在Flex和Java之间进行数据交互,主要依赖于AMF(Action Message Format)协议,这是一种二进制的轻量级通信协议,由Adobe公司提供,它能够快速地序列化和反序列化数据,从而实现Flex与Java之间的高效数据传输。...
Flex作为一个强大的富互联网应用程序(RIA)开发框架,与后台服务器的交互是其核心功能之一...而URLLoader则是一个轻量级的解决方案,适用于小规模数据加载。理解并熟练掌握这些通信方式,将有助于构建高效的Flex应用。
HTTP协议简单易用,适用于轻量级交互;SOAP则是基于XML的Web服务标准,适合更复杂的数据交换。 6. **Flex与Java通信过程** - 客户端:Flex应用通过ActionScript调用服务端的方法,这些调用通常封装在AMF或SOAP消息...
- ** BlazeDS服务**:Adobe的BlazeDS是Flex与服务器端通信的主要桥梁,它提供了一套轻量级的消息传输协议,包括AMF(Action Message Format)和Remoting,使得客户端与服务器之间的数据交换更为高效。 - **AMF**:...
XML是WebService的标准数据交换格式,而JSON因其轻量级和高效,也越来越被广泛应用。 5. **错误处理**:在Flex端,需要设置fault事件处理程序,捕获并处理调用WebService过程中可能出现的错误。 6. **数据绑定**:...
REST(Representational State Transfer)是一种轻量级的架构风格,适合于分布式系统中的数据交换。 - PHP可以使用诸如PDO(PHP Data Objects)或MySQLi等库来连接和操作MySQL或其他类型的数据库。通过REST API,...
URLLoader适用于轻量级的通信需求,比如加载单个文件或者简短的数据。 这三种方法各有特点,HTTPService适合简单的HTTP请求,WebService适用于调用复杂且跨平台的Web服务,而URLLoader则在处理小型数据时更为灵活。...
SOAP(Simple Object Access Protocol)是一种轻量级、基于XML的协议,用于在Web上交换结构化的和类型化的信息。 在`描述`中提到,我们可以通过复制WSDL(Web Service Description Language)地址到浏览器来查看Web...
RESTful API允许灵活的资源操作,适用于轻量级的交互。 2. **Oracle数据库连接**: 无论是Flex还是Web项目,都需要适配Oracle数据库。Web项目通常通过JDBC(Java Database Connectivity)驱动直接与数据库交互,...
在IT行业中,Spring框架是Java领域最常用的轻量级应用框架之一,而Flex则是一种用于构建富互联网应用程序(RIA)的开发工具,基于Adobe AIR和Flash Player运行时。将Spring与Flex整合,可以充分利用两者的优点,为...
SOAP是一个轻量级的协议,用于在Web上交换结构化的、类型化的信息。当Flex客户端需要调用.NET Webservice的方法时,会生成一个SOAP消息,通过HTTP发送到服务端。服务端执行相应操作后,再返回一个SOAP响应。 具体...
这种通信方式相对简单,但效率较低,适合轻量级应用。 4. WebService:Java可以通过SOAP或RESTful WebService提供API,Flex客户端可以调用这些服务获取或更新数据。这种方式灵活且易于扩展,适用于跨平台的分布式...