struts2后台乱码

问题描述

RT,有点困惑的是第一次提交不乱码第二次乱码具体如下:我做的是一个faq发布系统在第一次提交的时候把内容都封装到一个faq对象中提交比如<inputtype="text"name="faq.question"/>输入中文提交后后台正常接收action返回一个页面,这个页面中用隐藏域<inputtype="hidden"value="${faq.question}"name="faq.question"/>然后再次提交,后台打印,乱码了!(把这个值alert出来并不乱码,所以可以确定是传到后台乱码的)所有地方都是utf-8,拦截器也用了,struts.xml也配了,都不行。甚至我以为万能的方法,直接在后台Stringcontent=newString(faq.getCOntent().getBytes("ISO-8859-1"),"UTF-8");也用了,这样都乱码!然后我把hidden标签换成text标签,value="${faq.question}"也能正常显示,提交后依旧乱码。然后直接访问这个页面,直接在text中输入中文,这样果然是不乱码的,那么问题来了,为什么二次提交后会乱码?这个是哪个地方的问题呢?望解答!

解决方案

解决方案二:
web.xml里面<filter-mapping><filter-name>encodingFilter</filter-name><url-pattern>/*</url-pattern></filter-mapping>添加了吗

时间: 2024-10-29 12:31:45

struts2后台乱码的相关文章

request参数-jsonp跨域访问Struts2后台,获取到的数据没有用callback参数包裹是怎么回事啊?

问题描述 jsonp跨域访问Struts2后台,获取到的数据没有用callback参数包裹是怎么回事啊? 前端代码: $.ajax({ url:'http://localhost:8080/OA/json/json.action?orgid=aaa&code=00002', dataType:'jsonp', type:"GET", dataFilter:function(json,me){ alert("dataFiter:"+json); }, cont

STRUTS+AJAX+JSP 请求到后台乱码问题解决方法

 STRUTS+AJAX+JSP 请求到后台乱码问题可在AJAX请求URL之前把参数进行encodeURI()转码来解决,遇到类似情况的朋友可以参考下 在AJAX请求URL之前 把参数进行encodeURI()转码.    如:   代码如下: var fileName=document.getElementById("filePath").value;  if(null!=fileName){  //alert(fileName);  //进行转码 不然后台会乱码  fileName

java前台传中文到后台乱码问题,还有浏览器的差异

问题描述 java前台传中文到后台乱码问题,还有浏览器的差异 前台通过url的形式传中文参数,后台用 String parvalue = new String( request.getParameter("parvalue").getBytes("ISO8859-1"), "utf-8"); 这样接受,在谷歌浏览器上没问题,但在IE浏览器,QQ浏览器上却是乱码. 然后换个方式,前台url += "&area=" + e

dwz 主从表结构 struts2 后台应该怎么做才能读取从表数据

问题描述 dwz主从表结构struts2后台应该怎么做才能读取从表数据<divclass="tabs"><divclass="tabsHeader"><divclass="tabsHeaderContent"><ul><liclass="selected"><ahref="javascript:void(0)"><span>

Ajax传递中文参数到后台乱码的有效解决方法_AJAX相关

使用Ajax传递中文参数,如果不对参数进行处理的话,传到后台会变成乱码,经测试可以使用如下方法 这里是以jquery.autocomplete插件中获取输入框中的数据传到后台为例: 注意要对中文使用encodeURI编码两次 复制代码 代码如下: extraParams: {q:function(){return encodeURI(encodeURI($('#keyword').val()))}} 这里同样也要解码两次 复制代码 代码如下: String key = URLDecoder.de

struts2 + jquery 乱码问题

问题描述 我的jsp页面时UTF-8,在java端httpRequest也是UTF-8,ajax提交的时候Content-Type也是application/x-www-form-urlencoded,但是ajax提交的时候java端获取到的数据却是中文乱码,表单提交一切正常,求解! 解决方案 解决方案二:楼主的情况我也遇到过,在页面发送请求的时候先转码一次:encoudeurl();然后取出的时候在decodde转一次.我写的两个关键字可能不正确.解决方案三:ajax提交默认的编码方式是utf

Ajax传递中文参数到后台乱码的有效解决方法

使用Ajax传递中文参数,如果不对参数进行处理的话,传到后台会变成乱码,经测试可以使用如下方法 这里是以jquery.autocomplete插件中获取输入框中的数据传到后台为例: 注意要对中文使用encodeURI编码两次 复制代码 代码如下: extraParams: {q:function(){return encodeURI(encodeURI($('#keyword').val()))}} 这里同样也要解码两次 复制代码 代码如下: String key = URLDecoder.de

window.location.herf=url参数有中文,到后台乱码问题解决

js中的代码: /*将中文的参数进行两次编码 */ function queryByName(){                    //获取查询条件的用户名                    var queryName=$("#queryName").val();//尚晓飞当当                    alert(queryName);                    //进行后台跳转                    window.location.

struts2 乱码问题

问题描述 请教下,struts2 的乱码问题,1.jsp页面设置的编码是utf-8[code=java]<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>2.struts.xml[code=java]<constant name="struts.i18n.encoding" value="utf-8"&g