Flex与Strust2的交互中,乱码问题很是头痛,网上的解决方法也不系统,花了很长时间才解决~~~
Flex->Action
在flex前台将要传输的字符串编码:
UserRegisterDetailSave.request.address = encodeURIComponent(address.text);
address中的内容包含中文,就需要重新编码
后台需要增加一个编码的Filter:
package com.filter;
import java.io.IOException;
import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
public class EncodingFilter implements Filter{
public void destroy()
{
}
public void doFilter(ServletRequest request, ServletResponse response,
FilterChain filterChain) throws IOException, ServletException
{
request.setCharacterEncoding("utf-8");
response.setCharacterEncoding("utf-8");
filterChain.doFilter(request, response);
}
public void init(FilterConfig arg0) throws ServletException {
// TODO Auto-generated method stub
}
}
这个Filter将请求编码为"utf-8"的形式,这样才能进行下一步解码.在Action中,需要用到值中包含中文的属性时,用URLDecoder.decode(address, "utf-8")进行解码,解码前后address都是String类型.如果还是不行的话,检查一下前台界面是不是有:initialize="flash.system.System.useCodePage=true"的标记,有的话改成false.
Action->Flex
这个很方便,添加两行代码至Action末端:
HttpServletResponse response = ServletActionContext.getResponse();
response.setCharacterEncoding("utf-8");
最后就是通过HttpService获取远程Xml了,这个更方便了,将页面Application标签里添加:
initialize="flash.system.System.useCodePage=true"
上面的方法全是项目中自己遇到然后解决了的,如果没有用的话那只能深感无奈了~~~
分享到:
相关推荐
简单的 flex HttpService例子,可供初学者参考
- 在Flex中,你可以通过`<mx:HTTPService>`标签的`parameters`属性传递参数。 - 服务器响应的数据会被自动解析并赋值给`HTTPService`的结果对象。 6. **调试与错误处理** - 使用Flex的`LogCat`或第三方工具如...
在提供的压缩包文件中,可能包含了一个名为`demo`的示例项目,该项目展示了如何在实际应用中使用上述步骤来实现Flex4的`HTTPService`来提取XML数据。通过查看和运行这个示例,你将更深入地理解如何在Flex4中使用`...
Flex中的HTTPService组件提供了灵活的方式与后台进行数据交互。通过URLVariables对象或`<mx:request/>`标签,我们可以方便地传递参数给服务器。理解这两种方法对于开发Flex应用程序并与服务器进行数据交换至关重要。...
在开发Flex应用程序时,我们经常会遇到中文乱码的问题,这主要源于AS3(ActionScript 3...对于`解决Flex中文乱码.txt`这个文件,它可能包含了具体的代码示例或更详细的解决步骤,你可以参考其中的内容来解决你的问题。
本篇文章将深入探讨如何利用Flex 4.0中的HttpService和WebService组件与Java Struts2框架构建的服务器进行通信。 首先,我们来看HttpService。HttpService是ActionScript 3.0中的一个类,用于发起HTTP请求,通常...
在Flex中,我们可以监听HTTPService的`result`事件来获取这个响应。在MXML中,可以这样设置: ```xml <mx:HTTPService id="javaService" result="handleResult(event)" ... /> ``` 在AS3代码中,`handleResult...
首先,我们需要了解Flex中的HTTPService组件。HTTPService允许开发者发送HTTP请求到服务器,并接收响应数据。这个组件基于XMLSocket和XMLHttpRequest,支持GET和POST方法,可以处理JSON、XML或其他格式的数据。在...
帶有ASP.NET的Flex HTTPService ... Adobe Flex中有許多方法可以與ASP.NET(或簡單地說,服務器端語言)進行通信。 HttpService,WebService,WebORB,FluorineFx等。在本教程中,我僅關注HTTPService。
flex通过httpService读取xml数据到datagird中,通过读取远程URL的XML数据(这里保存到本地),保存到ArrayCollection中,然后在将ArrayCollection绑定到datagird上 环境:flex3.0 可直接运行
1. Flex组件:Flex中可以使用`FileReference`组件来实现文件上传。用户通过选择文件后,`FileReference`会将文件内容读取到内存中,然后通过HTTP请求发送到服务器。 2. 事件处理:在`FileReference`上监听`select`...
### Flex中的HTTPService组件 HTTPService是Flex中用于与服务器进行异步通信的关键组件之一。它通过发送HTTP或HTTPS请求到Web服务,并处理返回的响应,实现了Flex应用与后端数据服务之间的交互。HTTPService支持GET...
根据提供的文件信息,我们可以深入探讨FLEX中的_HTTPService组件及其使用方法。此组件主要用于与Web服务进行通信,例如从服务器获取或发送数据。下面将详细解释如何使用_HTTPService组件,并通过示例代码来展示其...
一、Flex中的HttpService组件 1. 创建HttpService:在Flex项目中,通过MXML或ActionScript可以创建HttpService实例。设置URL属性为SpringMVC的Controller处理路径,method属性为POST或GET,表明请求类型。 2. 设置...
这个项目展示了如何通过HTTPService组件在Flex应用中实现远程调用Java服务,以完成数据的交换和处理。Flex 4是Adobe AIR和Flash Player支持的ActionScript 3.0开发框架,它提供了一个强大的UI组件库和数据绑定机制,...
在Flex中,`HTTPService`组件是用于与服务器进行数据交换的重要工具,特别是对于与Java后台进行通信时。本篇文章将深入探讨Flex与Java后台通过`HTTPService`通信的原理、配置和实践。 1. **HTTPService组件介绍** ...
首先,Flex中的`HttpService`是ActionScript 3(AS3)的一个类,它允许Flex应用通过HTTP或HTTPS协议与服务器进行通信。使用`HttpService`,开发者可以方便地发送GET或POST请求,包括发送键值对数据。例如,你可以...
首先,让我们了解Flex中的XML类。XML类是ActionScript 3.0中用于处理XML文档的主要工具,它提供了丰富的API来创建、解析和操作XML。例如,可以使用`XML.parse()`方法将XML字符串转换为XML对象,或者直接通过XML构造...
在 Flex 开发中,HTTPService 是一个非常重要的组件,它允许我们从远程服务器获取数据,这些数据可以是 XML、JSON 或其他格式。本教程将详细解释如何使用 MXML 标签来配置 HTTPService,并将接收到的 XML 数据转换为...