- 浏览: 225024 次
- 性别:
- 来自: 深圳
文章分类
- 全部博客 (244)
- java (23)
- java多线程 (7)
- 综合 (1)
- oracle10g (24)
- div+css (1)
- Flex (27)
- java Nio (1)
- java设计模式 (8)
- struts2 (10)
- spring3.0 (5)
- SSH (9)
- dwr (5)
- hibernate3.6 (17)
- dom4j (1)
- sql优化 (5)
- Quartz任务调度框架 (1)
- AOP (3)
- JavaScript (18)
- jquery (3)
- JSF (9)
- ruby (1)
- 正则表达式 (1)
- 明日准备 (2)
- eclipse (3)
- gvim (1)
- CMS (1)
- linux (6)
- 杂 (4)
- java 设计模式 (1)
- MySql (10)
- JBPM (4)
- JSP技术 (1)
- Mybatis And Ibatis (2)
- 经验之谈 (10)
- WebService (1)
- java分布式(高性能,高可用,可伸缩) (0)
- springMvc (2)
- redis (0)
- ant (1)
- Nutz (6)
- 配置管理 (0)
- css+div (1)
- eChars (1)
- angularJs (1)
- D3 (3)
- Scala (1)
最新评论
-
Cobain_LI:
Cobain_LI 写道学习了,之前一直都没注意到有这样的问题 ...
js面向对象3--更简单的原型模式已经带来的问题以及解决办法 -
Cobain_LI:
Cobain_LI 写道学习了,之前一直都没注意到有这样的问题 ...
js面向对象3--更简单的原型模式已经带来的问题以及解决办法 -
Cobain_LI:
有个小失误,144和147行多了两个花括号
js面向对象2--js中工厂模式的演化(重要,详细) -
Cobain_LI:
学习了,之前一直都没注意到有这样的问题
js面向对象3--更简单的原型模式已经带来的问题以及解决办法 -
YTT1121:
有网络拓扑发现的源代码么,或者您会编写么?可以有偿求购,搞科研 ...
flex 之twaver1--简单网络拓扑实现
注:原创作品,分享为交流学习,转载请注明出处。
HTTPService对象的使用 不用任何的额外配置,直接访问j2ee的Servlet类。从servlet返回来的数据类型有如下几种:
object、array、xml、flashvars、text和e4x,默认的设置为object。
下面介绍六种返回类型的实例
第一种:返回类型是e4x(实例是简单计算器)
ECMAScript for XML(E4X)是一扩展了ECMAScript(包含ActionScript、DMDScript、JavaScript、JScript等)的编程语言,它增加对 XML 的内在支持。它的目标是在访问XML文档时,提供一种更直观、语法更简洁的的 DOM 接口。它也是处理XML时的一种新的方式。在 E4X 版本之前,通常总是在 Objcet(对象)层次上访问XML,而 E4X 则是把 XML 当做原始数据(primitive)来处理(比如字符、数字和布尔值)。这也意味着更快的访问速度、更好的支持、和使 XML 可以成为程序的一个组块(数据结构)。
e4x实例:
flex页面:
服务端Servlet:
第二种:返回类型是list<String>
flex端:
<!--返回数据的格式resultFormat有几种类型,object、array、xml、flashvars、text和e4x,默认的设置为object。 -->
java服务端:
HTTPService对象的使用 不用任何的额外配置,直接访问j2ee的Servlet类。从servlet返回来的数据类型有如下几种:
object、array、xml、flashvars、text和e4x,默认的设置为object。
下面介绍六种返回类型的实例
第一种:返回类型是e4x(实例是简单计算器)
ECMAScript for XML(E4X)是一扩展了ECMAScript(包含ActionScript、DMDScript、JavaScript、JScript等)的编程语言,它增加对 XML 的内在支持。它的目标是在访问XML文档时,提供一种更直观、语法更简洁的的 DOM 接口。它也是处理XML时的一种新的方式。在 E4X 版本之前,通常总是在 Objcet(对象)层次上访问XML,而 E4X 则是把 XML 当做原始数据(primitive)来处理(比如字符、数字和布尔值)。这也意味着更快的访问速度、更好的支持、和使 XML 可以成为程序的一个组块(数据结构)。
e4x实例:
var sales = <sales vendor="John"> <item type="peas" price="4" quantity="6"/> <item type="carrot" price="3" quantity="10"/> <item type="chips" price="5" quantity="3"/> </sales>; alert( sales.item.(@type == "carrot").@quantity ); alert( sales.@vendor ); for each( var price in sales..@price ) { alert( price ); }
flex页面:
<?xml version="1.0" encoding="utf-8"?> <s:Application xmlns:fx="http://ns.adobe.com/mxml/2009" xmlns:s="library://ns.adobe.com/flex/spark" xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600"> <!--返回数据的格式resultFormat有几种类型,object、array、xml、flashvars、text和e4x,默认的设置为object。 --> <fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> <mx:HTTPService id="sevlet" resultFormat="e4x" result="resultHandler(event)" url="http://localhost:8080/myReport/FlexCalculate" /> </fx:Declarations> <fx:Script> <![CDATA[ import mx.collections.ArrayCollection; import mx.controls.Alert; import mx.rpc.events.ResultEvent; var com:ArrayCollection = new ArrayCollection(["+","-","*","/"]); private function calculate():void{ this.submit.enabled=false; var param:URLVariables=new URLVariables(); if(this.number1.text == "" || this.number2.text == ""){ Alert.show("请输入数字"); return; } param.number1=this.number1.text; param.number2=this.number2.text; param.opertion=this.myComboBox.text; param.timestamp=(new Date()).toString(); this.sevlet.send(param);// } private function resultHandler(event:ResultEvent):void{ result.text = event.result.calculateResult this.submit.enabled=true; } private function clean():void{ this.number1.text = ""; this.number2.text = ""; this.myComboBox.text = "+"; this.result.text = ""; } ]]> </fx:Script> <s:Panel width="500" height="300" title="计算器" backgroundColor="#8C7C73" verticalCenter="0" horizontalCenter="0"> <mx:VBox> <mx:HBox> <s:TextInput width="150" id="number1"/> <mx:ComboBox id="myComboBox" x="10" y="10" dataProvider="{com}" width="50"/> <s:TextInput width="150" id="number2"/> <s:Button label="=" width="30" id="submit" click="calculate();"/> <s:TextInput width="50" id="result"/> </mx:HBox> <mx:HBox> <s:Button label="计算" width="230" click="calculate();"/> <s:Button label="清除" width="230" click="clean();"/> </mx:HBox> </mx:VBox> </s:Panel> </s:Application>
服务端Servlet:
package controller; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class FlexCalculate extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("number1:" + request.getParameter("number1")); System.out.println("number2:" + request.getParameter("number2")); System.out.println("opertion:" + request.getParameter("opertion")); int result = 0; if (request.getParameter("opertion").equals("+")) { result = Integer.valueOf(request.getParameter("number1")) + Integer.valueOf(request.getParameter("number2")); } else if (request.getParameter("opertion").equals("-")) { result = Integer.valueOf(request.getParameter("number1")) - Integer.valueOf(request.getParameter("number2")); } else if (request.getParameter("opertion").equals("*")) { result = Integer.valueOf(request.getParameter("number1")) * Integer.valueOf(request.getParameter("number2")); } else { result = Integer.valueOf(request.getParameter("number1")) / Integer.valueOf(request.getParameter("number2")); } System.out.println("result1:" + result); request.setCharacterEncoding("UTF-8"); response.setContentType("text/xml;charset=utf-8"); String para = request.getParameter("username"); PrintWriter out = response.getWriter(); out.println("<zpa>"); out.println("<calculateResult>" + result + "</calculateResult>"); out.println("</zpa>"); out.flush(); out.close(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
第二种:返回类型是list<String>
flex端:
<!--返回数据的格式resultFormat有几种类型,object、array、xml、flashvars、text和e4x,默认的设置为object。 -->
<fx:Declarations> <!-- 将非可视元素(例如服务、值对象)放在此处 --> <mx:HTTPService id="sevlet" resultFormat="array" result="resultHandler(event)" url="http://localhost:8080/myReport/stringListServlet" /> </fx:Declarations> this.sevlet.send(param);// private function resultHandler(event:ResultEvent):void{ trace(event.result); // result.text = event.result.calculateResult this.submit.enabled=true; }
java服务端:
package controller; import java.io.IOException; import java.io.PrintWriter; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; public class StringListServlet extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { List<String> resultList = new ArrayList<String>(); resultList.add("chenchaoyang"); resultList.add("supan"); resultList.add("pangzi"); resultList.add("27"); request.setCharacterEncoding("UTF-8"); response.setContentType("text/xml;charset=utf-8"); PrintWriter out = response.getWriter(); out.println(resultList); out.flush(); out.close(); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { doGet(request, response); } }
发表评论
-
flex之空间的visible,includeInLayout实现显示与隐藏
2014-05-11 00:43 2150注:原创作品,分享以供学习交流,转载请注明出处。 flex控 ... -
flex之下拉框值更改事件调用JavaScript函数
2014-05-10 00:00 941<?xml version="1.0" ... -
flex 之JavaScript 和ActionScript互通
2014-05-09 23:22 1451注:原创作品,分享以供交流学习,转载请注明出处。 J ... -
flex 之折线图2
2014-05-07 23:50 566该博文转自 “百度知道 ... -
flex 之twaver2--树,网络拓扑,表格综合
2014-05-07 21:10 581注:原创作品,分享以供交流学习,转载请注明出处。 tw ... -
flex 之twaver1--简单网络拓扑实现
2014-05-07 20:49 1562注:原创作品,分享以供学习交流,转载请注明出处。 twa ... -
flex validator 之通过性验证
2014-05-06 22:37 432注:原创作品,分享以供交流学习,转载请注明出处。 通过性 ... -
flex validator 之提交值验证
2014-05-06 22:06 468注:原创作品,分享以供交流学习,转载请注明出处。 提 ... -
flex validator 之实时验证
2014-05-06 21:57 471注:原创作品,分享以供学习交流,转载请注明出处。 要进 ... -
flex之StringValidator
2014-05-06 21:47 565<?xml version="1.0" ... -
flex验证器1,基本原理
2014-05-06 21:13 693注:原创作品,分享以供交流学习,转载请注明出处 flex四种 ... -
flex 之ActionScript3 之数据绑定(三种方法)
2014-04-14 01:57 908注:转载请注明出处; flex的数据绑定 1,使用{}中的表 ... -
flex 之ActionScript3 关联数组
2014-04-14 01:36 669关联数组 <fx:Script> < ... -
flex 之ActionScript3 第一
2014-04-13 23:48 6161,注释: 单行:// 多行:/* */ 2,变量名称 字母 ... -
flex 之RemoteObject + blazeds 与java服务端通信
2014-04-13 20:20 697一,blazeds 服务端搭建 1)在eclipse中创建we ... -
pureMVC 之基本使用
2014-04-11 00:16 1393pureMVC是flex的轻量级框架。下面是实例。 一,视 ... -
flex 之 pruMVC 基础例子
2014-03-28 02:19 8011,添加页面 <?xml version="1 ... -
flex之日期验证
2014-02-23 17:04 497第一种验证方法: <?xml version=" ... -
flex之Button,ButtonBar,LinkButton,LinkBar,ToggleButtonBar
2014-02-23 16:22 614<?xml version="1.0" ... -
flex验证之StringValidator
2014-02-22 20:38 747StringValidator主要用来验证输入字符串(必填,最 ...
相关推荐
在Java开发中,Flex HttpService是一个强大的工具,用于在Adobe Flex客户端与服务器之间进行数据通信。这个服务允许Flex应用程序通过HTTP协议发送请求到后端服务器,并接收响应数据。本篇文章将深入探讨如何在Java...
在提供的压缩包文件中,可能包含了一个名为`demo`的示例项目,该项目展示了如何在实际应用中使用上述步骤来实现Flex4的`HTTPService`来提取XML数据。通过查看和运行这个示例,你将更深入地理解如何在Flex4中使用`...
2. 创建HTTPService实例:在MXML中声明并实例化一个HTTPService对象,设置其`url`属性指向服务器端处理请求的URL,以及`method`属性(GET或POST)。 ```xml <mx:HTTPService id="httpService" url=...
这样,HTTPService将会把URLVariables对象中的所有属性作为POST请求的数据发送。 ### 方法2:使用`<mx:request/>`标签 这种方法更适合XML格式的数据交换,并且可以配合`mx:State`进行状态管理。以下是一个简单的...
在Flex中,`HTTPService`组件是用于与服务器进行数据交换的重要工具,特别是对于与Java后台进行通信时。本篇文章将深入探讨Flex与Java后台通过`HTTPService`通信的原理、配置和实践。 1. **HTTPService组件介绍** ...
1. Flex发送:在Flex客户端,当用户触发某个操作时,HttpService发送XML数据到服务器,数据内容由Flex的XML对象构建。 2. 春天处理:SpringMVC接收到请求后,通过XMLMessageConverter解析XML数据,然后将数据传递给...
1. **创建HTTPService实例**:在Flex代码中,首先需要创建一个HTTPService对象。你可以通过MXML或者ActionScript来创建。例如,在MXML中,可以这样写: ```xml <mx:HTTPService id="httpService" url=...
在这个场景中,Flex使用`HttpService`组件向Java的Servlet发送键值对形式的数据,而Servlet负责处理这些请求并返回响应数据。下面将详细介绍这一过程。 首先,Flex中的`HttpService`是ActionScript 3(AS3)的一个...
这个项目展示了如何通过HTTPService组件在Flex应用中实现远程调用Java服务,以完成数据的交换和处理。Flex 4是Adobe AIR和Flash Player支持的ActionScript 3.0开发框架,它提供了一个强大的UI组件库和数据绑定机制,...
本篇文章将深入探讨如何使用Flex解析XML文件,并通过HTTPService来读取XML内容,以及如何根据需求过滤字符串并获取所需值。 首先,让我们了解Flex中的XML类。XML类是ActionScript 3.0中用于处理XML文档的主要工具,...
总之,通过使用 Flex 中的 HTTPService MXML 标签,并设置 `resultFormat` 为 "object",我们可以方便地将远程服务器返回的 XML 数据转换为 ActionScript 对象,简化了数据处理过程,提高了开发效率。这个方法在处理...
在Flex开发中,HTTPService是ActionScript 3.0中一个关键的组件,它允许开发者与Web服务器进行异步通信,通常用于发送HTTP请求并接收XML、JSON或其他数据格式的响应。本实例将深入探讨如何使用HTTPService,解析返回...
4. **数据交互流程**:在Flex应用中,通常会创建一个HTTPService或WebService对象,配置其URL、方法和其他参数,然后定义一个事件监听器来处理返回的数据。当用户触发某个操作时,如点击按钮,服务会被调用,然后在...
通过本教材,学习者将掌握如何创建Flex项目,理解Flex在Web工程中的应用,以及如何利用HTTPService和RemoteObject与服务器进行数据交互,从而实现富互联网应用的功能。同时,提供的参考资料和安装文件将有助于实际...
2. **构建XML数据**:在发送请求前,FLEX端可能需要构建一个XML对象,包含要传递给服务器的数据。XML因其结构清晰、易于解析的特性,常被用于数据交换。 3. **发送请求**:调用HTTPService的send()方法,将XML数据...
- 使用HTTPService对象创建一个请求,设置URL为C#服务端的地址,结果格式为E4X,方法为POST,并设置contentType为"application/xml"。 - 发送XML数据到C#端,然后添加一个事件监听器来处理返回的结果。 - 当收到...
它通过URLRequest对象指定要访问的资源,并通过Event.COMPLETE事件处理响应。使用URLLoader,开发者可以实现简单的GET或POST请求,适合于数据量较小的请求。例如,获取JSON或XML格式的数据。 二、HTTPService ...
尽管这个Flex编写的RSS订阅程序可能有不足之处,但作为学习和参考的资源,它可以帮助初学者理解如何结合Flex、HTTPService和RSS解析来构建功能丰富的RIA应用。通过深入研究和改进,可以打造出更加高效和用户友好的...
本篇文章将详细探讨Flex与后台交互的三种主要方法:HTTPService、WebService和URLLoader。 1. HTTPService: HTTPService是Flex中用于处理HTTP请求的组件,基于标准的HTTP协议进行通信。通过HTTPService,开发者...