strut2中文提交乱码

xiao_wei_ 2010-03-20 11:42:35
将form表单里面的值提交到struts2 ,可是接收到过来的是乱码,怎么解决,在struts.xml配置
<constant name="struts.il8n.encoding" value="gbk"></constant> 不起作用,
在web.xml配置过滤器也不起作用,tomact里也不起作用,用的是GBK
...全文
159 18 打赏 收藏 转发到动态 举报
写回复
用AI写文章
18 条回复
切换为时间正序
请发表友善的回复…
发表回复
happyfmy 2010-03-20
  • 打赏
  • 举报
回复
全部改成UTF-8
<constant name="struts.il8n.encoding" value="UTF-8"></constant>和JSP页面
再不行 加上过滤器
javafx 2010-03-20
  • 打赏
  • 举报
回复
我以前也碰到过这种问题
设置了il8n
并且还用了spring解决中问题的问题
但是还是不好使

憋了我3天

后来发现时我的jsp页面 中的问题
里面的form表单 我没设定方法 method=""
最后加上这个好了

现在估计你也是这个问题

xiao_wei_ 2010-03-20
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 cao1ccc 的回复:]
第一次听说可以在Struts配置文件当中可以解决乱码的问题,我在此留意一下。
我以前都是用的过滤器
[/Quote]

那是struts2
cao1ccc 2010-03-20
  • 打赏
  • 举报
回复
第一次听说可以在Struts配置文件当中可以解决乱码的问题,我在此留意一下。
我以前都是用的过滤器
xiao_wei_ 2010-03-20
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 javafx 的回复:]
struts2 你用的是哪个版本的 2.1.6的struts.il8n.encoding是个 bug
2.1.6以后的可以正常使用
估计是版本问题
[/Quote]
我改了,不行
xiao_wei_ 2010-03-20
  • 打赏
  • 举报
回复
[Quote=引用楼主 xiao_wei_ 的回复:]
将form表单里面的值提交到struts2 ,可是接收到过来的是乱码,怎么解决,在struts.xml配置
<constant name="struts.il8n.encoding" value="gbk"></constant> 不起作用,
在web.xml配置过滤器也不起作用,tomact里也不起作用,用的是GBK
[/Quote]

struts2-core-2.0.6.jar 这个版本的。。。
colin_pxx 2010-03-20
  • 打赏
  • 举报
回复
gbk改成UTF-8试试
javafx 2010-03-20
  • 打赏
  • 举报
回复
struts2 你用的是哪个版本的 2.1.6的struts.il8n.encoding是个 bug
2.1.6以后的可以正常使用
估计是版本问题
灵犀Sword 2010-03-20
  • 打赏
  • 举报
回复
使用最新的2.1.8版本
zjwilove4 2010-03-20
  • 打赏
  • 举报
回复
另外Web容器好像也可以配置
zjwilove4 2010-03-20
  • 打赏
  • 举报
回复
页面、后台使用统一的编码,使用过滤器,如果AJax就用encodeURI编译。实在不行就手动转码。。。
没用过Struts2
wdl5i 2010-03-20
  • 打赏
  • 举报
回复
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
<!-- default: /WEB-INF/applicationContext.xml -->
</listener>

<context-param>
<param-name>contextConfigLocation</param-name>
<!-- <param-value>/WEB-INF/applicationContext-*.xml,classpath*:applicationContext-*.xml</param-value> -->
<param-value>classpath:beans.xml</param-value>
</context-param>

过滤器必须放在struts配置之前,把method改为post
mrliu314 2010-03-20
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 ineedaname 的回复:]
method 我加上了,可是还是不行,结果我从新建了个action类,从放了,好了

是不是因为项目没有clean然后再编译的缘故?
[/Quote]

用的什么开发工具啊,我在eclipse上用struts2时经常出这种没有重新编译的问题,很是郁闷
guyuxuelang 2010-03-20
  • 打赏
  • 举报
回复
你先把页面的编码也换一下看看
ineedaname 2010-03-20
  • 打赏
  • 举报
回复
method 我加上了,可是还是不行,结果我从新建了个action类,从放了,好了

是不是因为项目没有clean然后再编译的缘故?
pax_1314 2010-03-20
  • 打赏
  • 举报
回复
是不是form 标签上 没 有设置method 属性 等于 post 不要用get
xiao_wei_ 2010-03-20
  • 打赏
  • 举报
回复
[Quote=引用 8 楼 xiaoye2892 的回复:]
全部改成UTF-8
<constant name="struts.il8n.encoding" value="UTF-8"></constant>和JSP页面
再不行 加上过滤器
[/Quote]

你说的,我都综合了,还是不行
xiao_wei_ 2010-03-20
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 javafx 的回复:]
我以前也碰到过这种问题
设置了il8n
并且还用了spring解决中问题的问题
但是还是不好使

憋了我3天

后来发现时我的jsp页面 中的问题
里面的form表单 我没设定方法 method=""
最后加上这个好了

现在估计你也是这个问题
[/Quote]
method 我加上了,可是还是不行,结果我从新建了个action类,从放了,好了

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧