六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 20|回复: 0

flex的httpservice与java交互过程中的乱码问题

[复制链接]

升级  58.67%

38

主题

38

主题

38

主题

秀才

Rank: 2

积分
138
 楼主| 发表于 2013-2-3 10:37:57 | 显示全部楼层 |阅读模式
写程序这么久了,以为自己早已告别了乱码问题,可是最近在做flex和java交互的时候,再次遇到了乱码问题,不用说,又是一通乱试,将网上所有能找的方法试验了一遍,终于解决了这个问题。


<?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"
   initialize="getJsParam();init(event);doWork();flash.system.System.useCodePage=true"
   addedToStage = "init2(event)"
   preloader="iman.sps.asfile.MyProgressBar"
    applicationComplete=""
   xmlns:mx="library://ns.adobe.com/flex/mx" minWidth="955" minHeight="600">





在application中的initialize方法中加flash.system.System.useCodePage=true后,一切变正常了。在此说明:jsp页面GBK,workspace  gbk(工程编码也为gbk), tomcat 编码为UTF-8,在此设置下flex页面向后台传值无乱码,希望对大家有所帮助。
     但是,从后台传前台的返回值依然乱码,
public void acceptSheet() throws Exception{
String accountName = this.getSessionValue(SessionUtil.accountName);
String userName = this.getSessionValue(SessionUtil.userName);
request.setCharacterEncoding("GBK");
response.setContentType("text/html;charset=gbk;");
log.info("接单方法执行了");
String str ="";
try{
baseSheetService.acceptSheet(workItemId, accountName, userName);
str = "接单成功";
}catch(Exception e){
str="接单失败";
e.printStackTrace();
}
PrintWriter out = response.getWriter();
out.print(str);
}



request.setCharacterEncoding("GBK");
设置合适的编码可解决后台向前台传值问题。
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表