- 浏览: 1149321 次
- 性别:
- 来自: 火星郊区
博客专栏
-
OSGi
浏览量:0
文章分类
- 全部博客 (695)
- 项目管理 (48)
- OSGi (122)
- java (79)
- Vaadin (5)
- RAP (47)
- mysql (40)
- Maven (22)
- SVN (8)
- 孔雀鱼 (10)
- hibernate (9)
- spring (10)
- css (3)
- 年审 (6)
- ant (1)
- jdbc (3)
- FusionCharts (2)
- struts (4)
- 决策分析 (2)
- 生活 (10)
- 架构设计 (5)
- 破解 (2)
- 狼文化 (4)
- JVM (14)
- J2EE (1)
- 应用服务器 (1)
- 我的链接 (5)
- 数学 (2)
- 报表 (1)
- 百科 (6)
- Flex (7)
- log4j (2)
- PHP (1)
- 系统 (2)
- Web前端 (7)
- linux (6)
- Office (1)
- 安全管理 (5)
- python (2)
- dom4j (1)
- 工作流 (3)
- 养生保健 (4)
- Eclipse (8)
- 监控开发 (1)
- 设计 (3)
- CAS (1)
- ZK (41)
- BluePrint (3)
- 工具 (1)
- SWT (7)
- google (2)
- NIO (1)
- 企业文化 (2)
- Windoes (0)
- RCP (7)
- JavaScript (10)
- UML (1)
- 产品经理 (2)
- Velocity (10)
- C (1)
- 单元测试 (1)
- 设计模式 (2)
- 系统分析师 (2)
- 架构 (4)
- 面试 (2)
- 代码走查 (1)
- MongoDB (1)
- 企业流程优化 (1)
- 模式 (1)
- EJB (1)
- Jetty (1)
- Git (13)
- IPV6 (1)
- JQuery (8)
- SSH (1)
- mybatis (10)
- SiteMesh (2)
- JSTL (1)
- veloctiy (1)
- Spring MVC (1)
- struts2 (3)
- Servlet (1)
- 权限管理 (1)
- Java Mina (1)
- java 系统信息 (6)
- OSGi 基础 (3)
- html (1)
- spring--security (6)
- HTML5 (1)
- java爬虫搜索 (1)
- mvc (3)
最新评论
-
Tom.X:
http://osgia.com/
将web容器置于OSGi框架下进行web应用的开发 -
chenyuguxing:
你好, 为什么我的bundle export到felix工程中 ...
在Apache Felix中运行bundle -
string2020:
<niceManifest>true</ni ...
Bundle Plugin for Maven -
jsonmong:
OSGI,是未来的主流,目前已相当成熟。应用OSGI比较好的, ...
基于OSGi的声明式服务 -
zyhui98:
貌似是翻译过来的,有很少人在linux上做开发吧
如何成为“10倍效率”开发者
由于Flex只是一种客户端技术其本身并不能直接同数据库交互,在实际的应用开发过程中Flex提供了如URLRequest、HTTPService、RemoteObject、WebService等类以实现同服务器的通讯和数据交互,下面做一些介绍和实例解析:
1、使用URLRequest向服务器发送请求,使用URLLoader接收服务器返回的数据:
URLRequest类可捕获单个 HTTP 请求中的所有信息,可以将 URLRequest 对象传递给 Loader、URLStream 和 URLLoader 类以及其他加载操作的 load() 方法以启动 URL 下载;默认情况下,传递给 url 参数的 URL 必须与执行调用的 SWF 文件在完全相同的域,包括子域。如果要从其它域中加载数据,请在承载数据的服务器上放置一个跨域策略文件。有关URLRequest详细可参看http://help.adobe.com/zh_CN/AIR/1.1/jslr/flash/net/URLRequest.html
URLVariables类主要用来在应用程序和服务器之间传输参数变量;详细查看:http://livedocs.adobe.com/flex/3_cn/langref/flash/net/URLVariables.html
URLLoader 类以文本、XML、二进制数据或 URL 编码变量的形式从 URL 返回请求的数据详细请参看:http://livedocs.adobe.com/flex/3_cn/langref/flash/net/URLLoader.html
完成以下示例要引用到的Flex包:
- import mx.rpc.events.FaultEvent;
- import mx.collections.XMLListCollection;
- import flash.net.URLLoader;
- import flash.net.URLRequest;
- import flash.net.URLVariables;
- import flash.net.URLRequestMethod;
- import flash.events.Event;
- import mx.utils.URLUtil;
- import mx.collections.ArrayCollection;
- import mx.rpc.events.ResultEvent;
- import com.adobe.serialization.json.JSON;
2、应用示例一:通过URLRequest和URLVariables向服务器发送参数请求并返回服务器文本数据(以下服务器端都采用asp.net编写)
服务器端代码:
- protected void Page_Load(object sender, EventArgs e)
- {
- //获取URLResuest请求回的参数 返回数据用;分隔以方便Flex对数据进行序列化
- string rs = String.Format("name={0};age={1};address={2}",Request.QueryString["name"],
- Request.QueryString["age"],
- Request.QueryString["address"]);
- Response.ClearContent();
- Response.ContentType = "text/plain";
- Response.Write(rs); //以文本形式返回数据
- Response.End();
- }
FLEX中发送请求:
- private function getText():void
- {
- var v:URLVariables = new URLVariables("name=jacky&age=35&address=HongKong China");
- var r:URLRequest = new URLRequest();
- r.url = "http://localhost:2222/FlexService/TextFrm.aspx";
- r.method = URLRequestMethod.GET;
- r.data = v;
- var l:URLLoader = new URLLoader();
- l.load(r);
- l.addEventListener(Event.COMPLETE,txtCompleteHandler); //注册请求完成后 响应获取数据事件方法
- labMsg.alpha = 1;
- }
Flex中接收返回数据
- private function txtCompleteHandler(e:Event):void
- {
- var l:URLLoader = URLLoader(e.target);
- var o:Object = URLUtil.stringToObject(String(l.data)); //使用URLUtil对将数据进行反序列化以方便使用
- txtName.text = o.name;
- txtAge.text = o.age;
- txtAddress.text = o.address;
- labMsg.alpha = 0;
- }
3、应用示例二:返回JSON格式数据:
服务器端代码:
- public partial class JsonFrm : System.Web.UI.Page
- {
- Person person;
- protected void Page_Load(object sender, EventArgs e)
- {
- person = new Person();
- person.Name = "YAO MING";
- person.Age = 29;
- person.Address = "ShangHai China";
- HttpContext.Current.Response.ClearContent();
- HttpContext.Current.Response.ContentType = "text/plain";
- System.Runtime.Serialization.Json.DataContractJsonSerializer dcjs = new System.Runtime.Serialization.Json.DataContractJsonSerializer(person.GetType());
- dcjs.WriteObject(HttpContext.Current.Response.OutputStream,person);
- HttpContext.Current.Response.End();
- }
- }
- [System.Runtime.Serialization.DataContract]
- public class Person
- {
- [System.Runtime.Serialization.DataMember]
- public String Name{get;set;}
- [System.Runtime.Serialization.DataMember]
- public int Age { get; set; }
- [System.Runtime.Serialization.DataMember]
- public String Address { get; set; }
- }
FLEX中发送请求:
- private function getJson():void
- {
- var v:URLVariables = new URLVariables();
- var r:URLRequest = new URLRequest();
- r.url = "http://localhost:2222/FlexService/JsonFrm.aspx";
- r.method = URLRequestMethod.GET;
- r.data = v;
- var l:URLLoader = new URLLoader();
- l.load(r);
- l.addEventListener(Event.COMPLETE,jsonCompleteHandler);
- labMsg.alpha = 1;
- }
Flex中接收返回数据
- public function jsonCompleteHandler(e:Event):void
- {
- var l:URLLoader = e.target as URLLoader;
- var o:* = JSON.decode(l.data);
- txtName.text = o.Name;
- txtAge.text = o.Age;
- txtAddress.text = o.Address;
- labMsg.alpha = 0;
- }
4、应用示例三:返回XML格式数据:
服务器端代码:
- protected void Page_Load(object sender, EventArgs e)
- {
- String s = @"<?xml version=""1.0"" encoding=""utf-8""?>
- <EV_ChartData_Scatter xmlns=""http://www.byd.com/ChartData/XML"">
- <ScatterItem id=""0"">
- <CAN_ITEM_ID>561</CAN_ITEM_ID>
- <CAN_ITEM_NAME>主控ECU通讯状况</CAN_ITEM_NAME>
- <ITEM_VALUE>0</ITEM_VALUE>
- <MATCH_VALUE>正常</MATCH_VALUE>
- </ScatterItem>
- <ScatterItem id=""1"">
- <CAN_ITEM_ID>561</CAN_ITEM_ID>
- <CAN_ITEM_NAME>主控ECU通讯状况</CAN_ITEM_NAME>
- <ITEM_VALUE>1</ITEM_VALUE>
- <MATCH_VALUE>丢包</MATCH_VALUE>
- </ScatterItem>
- </EV_ChartData_Scatter>";
- Response.ClearContent();
- Response.ContentType = "text/xml";
- Response.Write(s);
- Response.End();
- }
FLEX中发送请求:
- private function getXML():void
- {
- var v:URLVariables = new URLVariables();
- var r:URLRequest = new URLRequest();
- r.url = "http://localhost:2222/FlexService/XMLFrm.aspx";
- r.method = URLRequestMethod.GET;
- r.data = v;
- var l:URLLoader = new URLLoader();
- l.load(r);
- l.addEventListener(Event.COMPLETE,xmlCompleteHandler);
- }
Flex中接收返回数据
- [Bindable]
- private var xml:XML;
- private function xmlCompleteHandler(e:Event):void
- {
- var l:URLLoader = e.target as URLLoader;
- xml= new XML(l.data);
- for each(var v in xml.ScatterItem)
- {
- }
- labMsg.alpha = 0;
- }
发表评论
-
简单是美——提升您Flex应用性能 .
2012-02-14 08:15 1380在RIA应用开发过程中,性能一直是我们关注的一个重点;生成s ... -
Flex与服务器交互之四(使用RemoteObject +BlazeDS+TomCat同Java交互及开发环境配置) .
2012-02-14 08:14 2607由于Flex只是一种客户端技术其本身并不能直接同数据库交互, ... -
Flex与服务器交互之三(使用WebService组件同服务器WebService通讯) .
2012-02-14 08:14 1295由于Flex只是一种客户端技术其本身并不能直接同数据库交互,在 ... -
Flex与服务器交互之二(使用HTTPService同服务器交互) .
2012-02-14 08:14 850由于Flex只是一种客户端技术其本身并不能直接同数据库交互, ... -
Flex 4.5 破解
2011-11-07 11:32 13771.安裝时选它预设滴 "試用" 安装 ... -
免费使用Adobe Flash Builder 4.5方法 不用注册码
2011-11-07 11:32 4953具体步骤如下: ...
相关推荐
在Flex开发中,`URLLoader` 是一个非常重要的类,用于加载远程数据,如XML、JSON等。在本示例中,它被用来从服务器获取XML文件并将其内容解析为XML对象,以便在应用程序中使用。`Flex` 是Adobe开发的一个开放源代码...
在Flex应用中,与后台服务器的交互是必不可少的功能,以便获取或更新数据,实现动态功能。本篇文章将详细探讨Flex与后台交互的三种主要方法:HTTPService、WebService和URLLoader。 1. HTTPService: HTTPService是...
根据提供的标题、描述、标签及部分内容,本文将详细介绍Flex与后台进行交互的三种主要方法:通过FlashVars传递参数、利用HttpService服务以及采用URLLoader组件。这些方法在Flex开发中非常常见,对于实现数据的前后...
根据提供的文档内容,本文将详细介绍Flex与后台交互的四种方法中的两种主要方法:HTTPService 和 URLLoader。这两种方法在Flex开发中非常常见,并且在实际应用中具有很高的实用价值。 ### 一、HTTPService #### 1....
Flex与Web服务的交互是构建富互联网应用程序(RIA)中不可或缺的一部分,它允许客户端的Flex应用与服务端进行数据交换,实现动态功能和实时更新。本文将深入探讨Flex与Web服务交互的三种主要方式:基本的HTTP交互...
本文将详细介绍使用Flex进行后台交互的两种主要方式:通过`HTTPService`和`URLLoader`来实现与服务器的通信。 #### HTTPService:面向服务的交互方式 `HTTPService`是Flex框架提供的一个用于执行HTTP请求的类,它...
在Flex开发中,我们经常需要从URL中获取请求参数,以便在应用程序中使用这些数据进行交互。本篇文章将深入探讨如何在Flex应用中通过URL获取`request`参数,并结合提供的文件列表来阐述实际操作步骤。 标题中的"flex...
2. **Flex客户端与Servlet通信**: Flex客户端通过HTTP服务与Servlet交互,主要使用`URLRequest`类发送HTTP请求,`URLLoader`类加载响应数据。HTTP方法通常是POST或GET,数据格式可以是XML、JSON或自定义格式。 3. *...
HTTPService是Flex提供的一种用于与Web服务器进行异步通信的组件,它基于HTTP协议。以下是如何使用HTTPService来获取并解析XML数据的步骤: (1)导入必要的库: ```actionscript import mx.rpc.http.HTTPService; ...
在Flex应用中监听浏览器关闭事件主要依赖于JavaScript与Flash/Flex之间的交互。当用户尝试关闭浏览器窗口时,`window.onbeforeunload`事件会被触发。我们可以通过在Flex应用中调用JavaScript来监听这个事件,并在...
标题中的“Flex与Java低数据量通信”是指在ActionScript(Flex的主要编程语言)和Java之间进行少量数据交互的技术。这种通信通常用于实现客户端(Flex应用程序)和服务器端(Java应用)之间的轻量级通信,比如请求...
然而,在Flex应用与不同源的服务器进行数据交互时,可能会遇到跨域访问的问题。跨域是Web浏览器的一个安全限制,它阻止了一个页面中的脚本直接访问另一个不同源的资源,除非目标服务器明确允许。 ### 跨域问题详解 ...
它允许开发者创建具有丰富图形用户界面的Web应用,并且能够与后端服务器进行数据交互。本主题将详细介绍如何在Flex中通过Web服务获取客户端的IP地址,以及在本地测试时如何处理局域网和本机IP地址。 1. **Flex与Web...
Flex是一个强大的开发框架,用于构建富互联网应用程序(RIA),而与后端服务器的交互是此类应用不可或缺的一部分。 ### Flex与JSP交互基础 在Flex中,`URLLoader`类是用于加载非二进制数据(如文本或XML)的主要...
在Flex开发中,XML数据是一种常见的数据交换格式,它轻量、可读性强,适合用于Web应用程序中的数据传输。本文将深入探讨如何在Flex中解析XML数据,以及相关的工具和技术。 1. XML基础 XML(Extensible Markup ...
根据提供的文件信息,我们可以总结出Flex中的多个实用技巧与应用场景。以下是对这些知识点的详细解析: ### 1. 获取屏幕分辨率 在Flex中获取屏幕分辨率是通过`Capabilities`类完成的,具体做法如下: ```...
在开发交互式应用程序时,有时需要将用户在Canvas上的操作转化为可保存的图像。这篇文档主要介绍了如何在Flex中将Canvas内容保存为图片并上传到J2EE服务器的过程。以下是详细步骤: 1. **从Canvas中提取内容** 在...