项目用了hibernate和struts2
问题还是乱码问题,但是这次有点蹊跷,若在第一次载入那个页面或者刷新,若执行查询,在该页面的查询条件是中文的传到action里后全是乱码,若继续再点查询,不再是乱码,一切正常。之后只要不重新载入页面或者刷新页面查询都没问题。
也就是只有第一次是乱码
页面设置了
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
struts.xml信息如下<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
        "http://struts.apache.org/dtds/struts-2.0.dtd">
<struts>
<constant name="struts.custom.i18n.resources" value="messageResource"/>
<constant name="struts.i18n.encoding" value="UTF-8"/>

    <package name="struts" extends="struts-default">
<action name="selectcomplaints" class="com.helphand.action.SelectComplaints">
<result name="success">queryshow.jsp</result>
<result name="input">queryshow.jsp</result>
</action>

    </package>
</struts>
页面的form这么写的<form action="selectcomplaints.action" method="post" target="mainFrame">
....
</form>
还提句页面组成是用的frame
在一个子frame里用输入查询条件
在另一个子frame里显示数据
哎,真的是无语了,望大家告知缘由。 谢谢啦~~~

解决方案 »

  1.   

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>加上charset=utf-8试试
      

  2.   

    按照楼上说法 尝试加了 contentType="text/html; charset=UTF-8"
    错误还是一样
    谢谢自己顶一下
      

  3.   

    呵呵,似乎你的文件本身就GBK编码的,而你的页面用了UTF-8,试下把这个统一了,看看还有没问题?
      

  4.   

    还是先用工具打开看看你的文本是什么编码的..
    另外用的tomcat吗?注意下相应的tomcat编码设置!