`
lovehui0228
  • 浏览: 101039 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Flex HttpService中乱码的解决

阅读更多

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"

 

上面的方法全是项目中自己遇到然后解决了的,如果没有用的话那只能深感无奈了~~~

1
0
分享到:
评论
3 楼 benri1 2012-10-22  
已经验证,可以使用
2 楼 12345678 2011-12-14  
实用却不啰嗦,难得呀楼主 !! 
1 楼 zhong_pro 2011-11-30  
LZ的方法太用了!
谢谢!

相关推荐

    flex HttpService 入门例子

    简单的 flex HttpService例子,可供初学者参考

    java 中使用Flex的HttpService的详细配置

    - 在Flex中,你可以通过`<mx:HTTPService>`标签的`parameters`属性传递参数。 - 服务器响应的数据会被自动解析并赋值给`HTTPService`的结果对象。 6. **调试与错误处理** - 使用Flex的`LogCat`或第三方工具如...

    flex4 httpservice 例子

    在提供的压缩包文件中,可能包含了一个名为`demo`的示例项目,该项目展示了如何在实际应用中使用上述步骤来实现Flex4的`HTTPService`来提取XML数据。通过查看和运行这个示例,你将更深入地理解如何在Flex4中使用`...

    Flex HTTPService如何给后台传递参数 .doc

    Flex中的HTTPService组件提供了灵活的方式与后台进行数据交互。通过URLVariables对象或`<mx:request/>`标签,我们可以方便地传递参数给服务器。理解这两种方法对于开发Flex应用程序并与服务器进行数据交换至关重要。...

    解决Flex 中文乱码

    在开发Flex应用程序时,我们经常会遇到中文乱码的问题,这主要源于AS3(ActionScript 3...对于`解决Flex中文乱码.txt`这个文件,它可能包含了具体的代码示例或更详细的解决步骤,你可以参考其中的内容来解决你的问题。

    Flex4.0 如何通过 HttpService和WebService与服务器进行通信

    本篇文章将深入探讨如何利用Flex 4.0中的HttpService和WebService组件与Java Struts2框架构建的服务器进行通信。 首先,我们来看HttpService。HttpService是ActionScript 3.0中的一个类,用于发起HTTP请求,通常...

    flex httpservice 和 java通信 获取 java端的返回值

    在Flex中,我们可以监听HTTPService的`result`事件来获取这个响应。在MXML中,可以这样设置: ```xml <mx:HTTPService id="javaService" result="handleResult(event)" ... /> ``` 在AS3代码中,`handleResult...

    Flex+HTTPService 例子

    首先,我们需要了解Flex中的HTTPService组件。HTTPService允许开发者发送HTTP请求到服务器,并接收响应数据。这个组件基于XMLSocket和XMLHttpRequest,支持GET和POST方法,可以处理JSON、XML或其他格式的数据。在...

    Flex HTTPService with ASP.NET.zip

    帶有ASP.NET的Flex HTTPService ... Adobe Flex中有許多方法可以與ASP.NET(或簡單地說,服務器端語言)進行通信。 HttpService,WebService,WebORB,FluorineFx等。在本教程中,我僅關注HTTPService。

    flex通过httpService读取xml数据到datagird中

    flex通过httpService读取xml数据到datagird中,通过读取远程URL的XML数据(这里保存到本地),保存到ArrayCollection中,然后在将ArrayCollection绑定到datagird上 环境:flex3.0 可直接运行

    flex上传下载 并解决中文乱码

    1. Flex组件:Flex中可以使用`FileReference`组件来实现文件上传。用户通过选择文件后,`FileReference`会将文件内容读取到内存中,然后通过HTTP请求发送到服务器。 2. 事件处理:在`FileReference`上监听`select`...

    flex httpservice实例

    ### Flex中的HTTPService组件 HTTPService是Flex中用于与服务器进行异步通信的关键组件之一。它通过发送HTTP或HTTPS请求到Web服务,并处理返回的响应,实现了Flex应用与后端数据服务之间的交互。HTTPService支持GET...

    FLEX _HTTPService的调用方法

    根据提供的文件信息,我们可以深入探讨FLEX中的_HTTPService组件及其使用方法。此组件主要用于与Web服务进行通信,例如从服务器获取或发送数据。下面将详细解释如何使用_HTTPService组件,并通过示例代码来展示其...

    Flex+SpringMVC HttpService 发送XML数据

    一、Flex中的HttpService组件 1. 创建HttpService:在Flex项目中,通过MXML或ActionScript可以创建HttpService实例。设置URL属性为SpringMVC的Controller处理路径,method属性为POST或GET,表明请求类型。 2. 设置...

    Flex4_httpService

    这个项目展示了如何通过HTTPService组件在Flex应用中实现远程调用Java服务,以完成数据的交换和处理。Flex 4是Adobe AIR和Flash Player支持的ActionScript 3.0开发框架,它提供了一个强大的UI组件库和数据绑定机制,...

    flex与httpService通信(java)

    在Flex中,`HTTPService`组件是用于与服务器进行数据交换的重要工具,特别是对于与Java后台进行通信时。本篇文章将深入探讨Flex与Java后台通过`HTTPService`通信的原理、配置和实践。 1. **HTTPService组件介绍** ...

    Flex使用HttpService以键值对的形式发送请求,Java使用Servlet接收

    首先,Flex中的`HttpService`是ActionScript 3(AS3)的一个类,它允许Flex应用通过HTTP或HTTPS协议与服务器进行通信。使用`HttpService`,开发者可以方便地发送GET或POST请求,包括发送键值对数据。例如,你可以...

    flex 解析xml文件 httpservice

    首先,让我们了解Flex中的XML类。XML类是ActionScript 3.0中用于处理XML文档的主要工具,它提供了丰富的API来创建、解析和操作XML。例如,可以使用`XML.parse()`方法将XML字符串转换为XML对象,或者直接通过XML构造...

    Flex中利用HTTPService MXML标签(tag)将XML转化为对象(objects)

    在 Flex 开发中,HTTPService 是一个非常重要的组件,它允许我们从远程服务器获取数据,这些数据可以是 XML、JSON 或其他格式。本教程将详细解释如何使用 MXML 标签来配置 HTTPService,并将接收到的 XML 数据转换为...

Global site tag (gtag.js) - Google Analytics