学习了一下Flex,想总结一下Flex与Java通信的例子。其中Flex与Java高数据量的通信用的是Blazeds,大多的例子是Blazeds自带的实例整理的。
首先看看使用Flex中的HTTPService如何与Java的Servlet通信。
Java端如下:
public class LoginServlet extends HttpServlet {
private static final long serialVersionUID = 7780152800409281311L;
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
this.doPost(request, response);
}
public void doPost(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String username = request.getParameter("username");
String password = request.getParameter("userpassword");
String message = null;
if (null == username || null == password || "".equals(username)
|| "".equals(password)) {
message = "failure";
} else if ("mengya".equals(username) && "mengya".equals(password)) {
message = "succeed";
} else {
message = "failure";
}
//返回客户端的是一个xml
response.setContentType("text/xml");
PrintWriter out = response.getWriter();
out.print("<result>");
out.print("<message>");
out.print(message);
out.print("</message>");
out.print("</result>");
}
}
与AJAX有点类似。
Flex端如下(主具的设计可以下载下面的源码):
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute"
backgroundGradientAlphas="[1.0, 1.0]"
backgroundGradientColors="[#FD1D06, #EAF807]" height="328" width="428">
<mx:HTTPService
showBusyCursor="true"
id="loginSrv"
result="doResult();"
method="GET"
url="http://localhost:8080/FlexStudy/LoginServlet">
<mx:request>
<username>
{txtname.text}
</username>
<userpassword>
{txtpwd.text}
</userpassword>
</mx:request>
</mx:HTTPService>
<mx:Script>
<![CDATA[
import mx.controls.Alert;
private function doResult():void
{
var returnValue:String=loginSrv.lastResult.result.message;
if(returnValue=="succeed") {
this.currentState="login";
}
else {
Alert.show("您的登录失败了","提示信息",Alert.OK,this,null,null,Alert.YES);
}
}
]]>
</mx:Script>
<mx:Panel id="loginPanel" x="69.5" y="52" width="289" height="200" layout="absolute" title="登陆" fontSize="12">
<mx:Button x="110" y="108" label="提交" id="btnSubmit" click="loginSrv.send();"/>
<mx:TextInput x="79" y="30" fontSize="12" id="txtname"/>
<mx:TextInput x="79" y="62" id="txtpwd" displayAsPassword="true"/>
<mx:Label x="21" y="32" text="姓名:" id="lbname" fontSize="12" fontWeight="bold"/>
<mx:Label x="21" y="64" text="密码:" id="lbpwd" fontSize="12" fontWeight="bold"/>
</mx:Panel>
</mx:Application>
分享到:
相关推荐
总结起来,Flex3与Java的低数据量通信可以通过`HTTPService`组件来实现,选择不同的数据格式(如text、JSON或XML)取决于具体的应用需求和数据结构。在实际项目中,可能还需要考虑安全性、性能优化等因素。对于大型...
本文将详细介绍如何使用Flex的HTTPService组件与Java服务进行交互,并获取Java端的返回值。首先,让我们了解一下Flex和Java通信的基本原理。 Flex是一款基于ActionScript 3的开源框架,用于创建富互联网应用程序...
Flex与Java之间的通信是开发跨平台应用程序时的关键技术,它允许客户端(通常为Flex应用程序)与服务器端(通常是Java应用程序)进行数据交换。本篇将深入探讨几种主要的通信方式:URLLoader,HTTPService和Socket。...
Flex与Java之间的通信是开发富互联网应用程序(RIA)时经常遇到的一个重要技术问题。Flex作为Adobe推出的基于ActionScript的开放源代码框架,主要用于构建交互性强的用户界面,而Java则是一种广泛使用的后端开发语言...
在Flex 4.0中,你可以通过以下步骤使用HttpService: 1. 引入所需的库:在MXML文件中,确保导入`mx.rpc.http.HTTPService`库。 ```xml <fx:Import source="mx/rpc/http/HTTPService"/> ``` 2. 创建HTTPService实例...
Flex与Java之间的通讯是开发富互联网应用程序(RIA)时的一项关键技术。Flex作为Adobe提供的一个开源框架,主要用于构建具有丰富用户界面的Web应用,而Java则是后端服务的主要提供者,处理业务逻辑和数据管理。两者...
1. AMF通信:AMF是一种高效的二进制序列化格式,用于Flex与Java之间的数据传输。Adobe的BlazeDS或LCDS(LiveCycle Data Services)提供了AMF通道,使得Flex4应用能够轻松调用Java服务。在Flex中,使用RemoteObject或...
BlazeDS通过AMF(Action Message Format)协议,实现了高性能、低延迟的数据传输,使得Flex前端可以高效地与Java后端进行交互。在本文中,我们将深入探讨如何使用BlazeDS来整合Flex和Java,以及在这个过程中可能遇到...
Flex与Java交互通讯是Web开发中的一个重要话题,它涉及到客户端与服务器端的高效协同工作。Flex,作为Adobe的开源框架,主要用于构建富互联网应用程序(RIA),而Java则是一种广泛使用的后端开发语言,能提供强大的...
XML作为一种轻量级的数据交换格式,非常适合在Flex和Java之间传递复杂的数据结构。 6. **配置services-config.xml** `services-config.xml`文件定义了Flex与服务器的交互方式,包括服务的配置、消息代理、目的地等...
Adobe的 BlazeDS 和 LCDS 服务支持AMF,可以实现Flex与Java之间的快速、低开销的数据交换。在Flex中,我们可以使用`RemoteObject`组件来连接到BlazeDS服务,然后调用Java服务的方法,传递和接收参数。 2. **配置...
1. **AMF(Action Message Format)通信协议**:AMF是一种二进制数据交换格式,用于提高Flex与Java之间的数据传输效率。Adobe的 BlazeDS 和 LCDS (LiveCycle Data Services) 提供了对AMF的支持,使得Flex客户端可以...
Flex作为一个强大的前端展示层技术,常用于创建动态、交互式的用户界面,而Java则在后端处理业务逻辑和数据管理。本教程将深入探讨Flex与Java的三种交互方式,帮助开发者更好地理解和实现跨平台的Web应用。 1. AMF...
AMF通道是Flex与Java集成的常用方式,因为AMF可以大大减少网络传输的数据量和提高性能。在Java端,可以通过 BlazeDS 或 LCDS 来实现AMF的序列化和反序列化。此外,Flex还可以通过SOAP协议调用Java Web Service,或者...
- 虽然HTTPService适用于简单的数据交换,但若数据量大,性能可能会下降。为了提高效率,可以使用AMF,它是Adobe开发的一种二进制序列化格式,能显著减少数据传输量。 - BlazeDS或LCDS是Adobe提供的服务器端库,...
在Flex与Java的集成中,通常使用AMF(Action Message Format)进行通信,它是一种二进制的序列化格式,能高效地传输数据。Flex客户端通过 BlazeDS 或 Adobe LiveCycle Data Services 与Java后端服务进行AMF通信,...
与 Java 的集成使得开发者能够利用 Flex 的强大可视化和交互能力,同时借助 Java 后端的强大计算和数据处理能力,实现复杂的业务逻辑和数据管理。以下是对“Flex 4 集成 Java”这一主题的详细阐述: 1. **Flex 4 ...
这里,我们详细探讨一下FLEX与Java的交互以及HTTPService在其中的作用。 FLEX是一种基于Adobe Flex框架的开发工具,用于构建富互联网应用程序(RIA)。它允许开发者使用ActionScript编程语言和MXML标记语言来创建...