使用struts2的<s:param>等标签向action传值出现中文乱码的解决方法
2014-10-20 18:17
1141 查看
最近公司OA改版,由于修改了原来的框架,所以很多东西都得重新实现。
废话不多说,问题所在:在一个页面中使用超链接,如下
<s:url id="resultDetailURL" action="queryPrice_detail">
<s:param name="pageindex" value="pageindex"></s:param>
<s:param name="model.id" value="%{id}"></s:param>
<s:param name="nameOrAddress" value="%{nameOrAddress}"></s:param>
<s:param name="city" value="%{city}"></s:param>
<s:param name="fwjg" value="%{fwjg}"></s:param>
<s:param name="fwcx" value="%{fwcx}"></s:param>
<s:param name="fwlx" value="%{fwlx}"></s:param>
<s:param name="startPrice" value="%{startPrice}"></s:param>
<s:param name="endPrice" value="%{endPrice}"></s:param>
</s:url>
<s:a href="%{resultDetailURL}" title="详细信息"><img src="images/oprator/view_detail.png" style="margin-bottom:-2px" border="0" title="详细信息" alt="详细信息" /> 详细信息 </s:a>
向action中传值时出现中文乱码,页面的编码方式已经设置为 UTF-8形式:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
纠结了挺久,最后发现原来是在tomcat的server.xml配置文件中使用了GBK的编码方式:
<Connector port="8085" protocol="HTTP/1.1"
maxTreads="500"
minSpareThreads="10"
maxSpareThreads="50"
acceptCount="50"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="GBK"/>
将GBK改为UTF-8,问题解决,当然情况不同可能出错点也不一样,仅供参考。
废话不多说,问题所在:在一个页面中使用超链接,如下
<s:url id="resultDetailURL" action="queryPrice_detail">
<s:param name="pageindex" value="pageindex"></s:param>
<s:param name="model.id" value="%{id}"></s:param>
<s:param name="nameOrAddress" value="%{nameOrAddress}"></s:param>
<s:param name="city" value="%{city}"></s:param>
<s:param name="fwjg" value="%{fwjg}"></s:param>
<s:param name="fwcx" value="%{fwcx}"></s:param>
<s:param name="fwlx" value="%{fwlx}"></s:param>
<s:param name="startPrice" value="%{startPrice}"></s:param>
<s:param name="endPrice" value="%{endPrice}"></s:param>
</s:url>
<s:a href="%{resultDetailURL}" title="详细信息"><img src="images/oprator/view_detail.png" style="margin-bottom:-2px" border="0" title="详细信息" alt="详细信息" /> 详细信息 </s:a>
向action中传值时出现中文乱码,页面的编码方式已经设置为 UTF-8形式:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
纠结了挺久,最后发现原来是在tomcat的server.xml配置文件中使用了GBK的编码方式:
<Connector port="8085" protocol="HTTP/1.1"
maxTreads="500"
minSpareThreads="10"
maxSpareThreads="50"
acceptCount="50"
connectionTimeout="20000"
redirectPort="8443"
URIEncoding="GBK"/>
将GBK改为UTF-8,问题解决,当然情况不同可能出错点也不一样,仅供参考。
相关文章推荐
- 使用<a>标签提交action会执行两次后台方法的原因(反射机制小实例问题的解决)
- jsp里<a>标签传参到action里中文乱码的解决办法
- 使用<a>标签调用struts2的action、传递动态参数、以及参数中出现加号等特殊字符的处理方法
- 关于Struts2使用redirectAction方式在两个Action之间传值时中文乱码问题的解决方法
- Struts2 Annotation的<param-name>actionPackages</param-name>讲解
- Struts2中的<s:action>标签
- jsp页面,使用Struts2标签,传递和获取Action类里的参数,注意事项。<s:a action><s:iterator><s:param>ognl表达式 在编写SSH2项目的时候,除
- 关于spring切面使用<aop:aspectj-autoproxy/>报错的解决方法
- 使用html <a href=""/>标签连接action的方法
- Struts2中的<s:action>标签
- struts2 用标签 <s:property value='[]'/> 取值 json 含有转义字符的解决方法
- <c:param> 标签中文乱码问题解决
- <s:property>标签从后台读取Date类型年份为两位在jsp页面显示的解决方法
- JSP 使用<%@include%>报Duplicate local variable path 错误 解决方法
- <img src="中文文件名" /> 无法显示图片,图片名改成英文就可以显示;试了下在电脑桌面写了个HTML测试下,可以显示中文名称的图片,解决方法
- struts2中JSP无法用<jsp:forward page="test.action"> 跳转到对应的 action中解决方法
- HTML中让图片滚动的<marquee>标签的使用方法
- ssh错误总结1.1----关与struts2中极为恶心的<s:action>标签问题
- JSP 中使用<%@include%> 报 Duplicate local variable path 错误的解决方法
- 使用get方式或<a>标签传值乱码问题