Flex与Java通信之HttpService
flashbuilder4.6、myeclipse10
参考:http://www.cnblogs.com/lovemoon714/archive/2012/05/25/2517684.html
1、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"
initialize="init()">
<fx:Declarations>
<!-- 将非可视元素(例如服务、值对象)放在此处 -->
</fx:Declarations>
<fx:Script>
<![CDATA[
import mx.controls.Alert;
import mx.rpc.events.FaultEvent;
import mx.rpc.events.ResultEvent;
import mx.rpc.http.HTTPService; private function init():void{ //加载HTTPService的返回监听
httpSer.addEventListener(ResultEvent.RESULT,httpSerResultHandler);
httpSer.addEventListener(FaultEvent.FAULT,httpSerFaultHandler);
} private function login():void{
httpSer.send();
} //返回成功事件
private function httpSerResultHandler(event:ResultEvent):void{
Alert.show(event.result.toString(),"登录提示");
}
//返回失败事件
private function httpSerFaultHandler(event:FaultEvent):void{
Alert.show(event.fault.message as String,"登录提示");
} ]]>
</fx:Script>
<fx:Declarations>
<s:HTTPService id="httpSer" url="http://localhost:8080/JavaFlexHttp/FlexLoginServelt1" method="POST">
<s:request>
<!--需要发送到服务器的参数名,及值,接收参数名时必须一致-->
<userName>{txt_userName.text}</userName>
<userPwd>{txt_userPwd.text}</userPwd>
</s:request>
</s:HTTPService>
</fx:Declarations>
<s:Panel x="37" y="40" width="250" height="200">
<s:Label x="37" y="28" text="用户名:"/>
<s:Label x="37" y="61" text="密 码:"/>
<s:TextInput id="txt_userName" x="82" y="24"/>
<s:TextInput id="txt_userPwd" x="83" y="56" displayAsPassword="true"/>
<s:Button x="83" y="115" label="登录" id="btn_login" click="login()"/>
</s:Panel>
</s:Application>
flex项目结构:
2、Java端代码
package com;
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 FlexLoginServelt extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException { response.setContentType("text/html");
response.setContentType("text/xml;charset=utf-8");
PrintWriter out = response.getWriter();
//接收Flex端传来的参数
String userName=request.getParameter("userName");
String userPwd=request.getParameter("userPwd");
String result="登录失败,用户名或密码错误!";
if("admin".equals(userName) || "".equals(userPwd)){
result="登录成功!";
}
//将登录信息返回给客户端
out.println(result);
out.flush();
out.close();
}
}
java项目结构:
3、web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name></display-name>
<servlet>
<servlet-name>111</servlet-name> <!-- 3 可随意取名 要和2一样-->
<servlet-class>com.FlexLoginServelt</servlet-class> <!-- 4 文件目录,注意添加包名-->
</servlet>
<servlet-mapping>
<servlet-name>111</servlet-name> <!-- 2 可随意取名 要和3一样-->
<url-pattern>/FlexLoginServelt1</url-pattern> <!-- 1 可随意取名-->
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!-- 访问顺序为1—>2—>3—>4,其中2和3的值必须相同。
url-pattern 标签中的值是要在浏览器地址栏中输入的 url,可以自己命名,
这个 url 访问名为 servlet-name 中值的 servlet,
两个 servlet-name 标签的值必须相同, 因为通过 servlet 标签中的 servlet-name 标签映射到 servlet-class 标签中的值,
最终访问 servlet-class 标签中的 class。
还有,web.xml 的 / 表示的是http://localhost:8080/ + 工程名
而.jsp页面的action,加了/表示绝对路径http://localhost:8080/ ,没有加 / 表示的是相对路径 -->
</web-app>
结果:
Flex与Java通信之HttpService的更多相关文章
- Flex+BlazeDS+java通信详细笔记
整了很长时间的通信,还是一直有一点问题.现在搞定了,记录一下,也跟有需求的同学们共享. 我重新把所有的过程再做一遍. 1新建Flex+BlazeDS+JAVA项目 右键.新建Flex项目 其中blaz ...
- Flex和Java通信报错
1.错误描述 11-30 18:15:52 ERROR [localhost-startStop-1] org.springframework.web.servlet.FrameworkServlet ...
- Flex+BlazeDS+java通信详细笔记2-推送
前台是Air,后台是java 在运行之前,先要在IE地址栏输入http://127.0.0.1:8080/PushDemo/TickCacheServlet?cmd=start 激活它. 地址:htt ...
- Flex与Java交互(Flex调用java类展示数据)解析xml展示数据
Flex与java通信最简单例子(详细说明了各种需要注意的配置):http://blog.csdn.net/u010011052/article/details/9116869 Flex与java通信 ...
- Flex Socket与Java通信实例说明(转)
Flex Socket与Java通信实例说明(转) 这两天一直在flex的Socket ,现在终于懂了很多.由浅到深一步一步深入.慢慢体会实例,虽然实例都是在网上找的,但也经过了我的测试.我比较喜欢注 ...
- flex与js通信、在浏览器中打开新窗口
一.flex与js通信(通过flex调用js方法) var urlR:URLRequest = new URLRequest("javascript:test('from flex')&qu ...
- 如何做好Flex与Java交互
三种flex4与Java顺利通信的方式是: flex与普通java类通信RemoteObject; flex与服务器交互HTTPService; flex与webservice交互WebService ...
- JAVA通信系列一:Java Socket技术总结
本文是学习java Socket整理的资料,供参考. 1 Socket通信原理 1.1 ISO七层模型 1.2 TCP/IP五层模型 应用层相当于OSI中的会话层,表示层, ...
- Cocos2d-JS/Ajax用Protobuf与NodeJS/Java通信
原文地址:http://www.iclojure.com/blog/articles/2016/04/29/cocos2d-js-ajax-protobuf-nodejs-java Google的Pr ...
随机推荐
- hadoop1.1.0的伪分布搭建步骤
watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvbWFuYnVyZW4wMQ==/font/5a6L5L2T/fontsize/400/fill/I0JBQk ...
- nios DMA使用注意事项
1.对同一个设备的多次DMA读写操作之间如果并行,有可能会导致数据传输错误.可以在程序中对每次DMA操作进行等待.如下: 点击(此处)折叠或打开 void dma_done(void *p) { in ...
- 使用Java操作Redis(二)
上篇文章中我们可以看到,通过自己动手编码来操作Redis是相当繁琐的,实际上我们在重复制造轮子.Redis网站上列举出了一些方便操作Redis的常用工具. 可供Java选择的比较多,这里介绍一下Jed ...
- 求从第一列走到第n列的最短路径
11 14 23 12 18 21 13 10 28 15 29 17 无 无 25 如上表所示.求从第一列到第n列的最短路径,行数不定,列数不定.这种情况下用什么算法比较好 可能说的不大清楚,例如有 ...
- stuff(param1, startIndex, length, param2)
1.作用 stuff(param1, startIndex, length, param2)将param1中自startIndex(SQL中都是从1开始,而非0)起,删除length个字符,然后用pa ...
- Python3基础笔记---re模块
参考博客: Py西游攻关之模块 就其本质而言,正则表达式(或 RE)是一种小型的.高度专业化的编程语言,(在Python中)它内嵌在Python中,并通过 re 模块实现.正则表达式模式被编译成一系列 ...
- SPOJ 7258 SUBLEX 后缀数组 + 二分答案 + 前缀和
Code: #include <cstdio> #include <algorithm> #include <cstring> #define setIO(s) f ...
- [USACO16FEB]围栏Fenced In Platinum
题目:洛谷P3141. 题目大意:有一个方形区域,被分成若干区域.现在要去掉若干条围栏,使得所有区域连通,求最少去掉多少长度的围栏. 解题思路:贪心.建议画图思考. 先对围栏位置进行排序,然后相邻两条 ...
- 【Henu ACM Round#17 F】Upgrading Array
[链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 如果我们对某一个位置i操作两次的话. 显然结果就和操作一次一样. 因为第一次操作过后1..i这些数字就变成是互质的了. gcd为1. ...
- URAL 1513. Lemon Tale(简单的递推)
写几组数据就会发现规律了啊. .但是我是竖着看的.. .还找了半天啊... 只是要用高精度来写,水题啊.就当熟悉一下java了啊. num[i] = 2*num[i-1]-num[i-2-k]. 15 ...