以下是我的struts.xml ,当登录成功之后由<result name="frame" >/console/frame.jsp</result> 跳转到 frame.jsp,frame.jsp 中出现中文乱码 , frame.jsp 中只有一句话 : 登录成功! 。
登录成功! 这几个字就显示为 ????! 怎么解决?
<?xml version="1.0" encoding="UTF-8"?>
<!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.devMode" value="true"/> <!-- DEBUGģʽ -->
<constant name = "struts.enable.DynamicMethodInvocation" value = "false" />
<constant name = "struts.i18n.encoding" value = "utf-8" />
<constant name="struts.objectFactory" value="spring" />
<constant name="struts.multipart.saveDir" value="c:\"></constant>
<package name="ajax" extends="json-default">
<action name="*UserAction" class="UserAction" method="{1}">
<result name="frame" >/console/frame.jsp</result>
<result name="error" >/console/error.jsp</result>
</action>
</package>
</struts>
上面的是我的 struts.xml 文件 我的jsp 编码有 <%@ page contentType="text/html; charset=utf-8"%> 这个已经加了 还是有上边的编码错误!
两种情况,jsp上显示的数据来源于servlet的话,那么就在servlet中加入
//这句话的意思,是让浏览器用utf8来解析返回的数据如果jsp的数据就是在jsp中的。那么再jsp中加入
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
pageEncoding="UTF-8"这个是关键