在发送url请求的页面和接收url请求的页面做如下设置
<%response.setContentType("text/vnd.wap.wml;charset=UTF-8";%>//utf8
<%request.setCharacterEncoding("UTF-8";%>//参数处理方式utf8
<%@ page pageEncoding="ISO-8859-1"%>//页面字符处理方式 iso-8859-1
我的JSP例子说明:
输入页面test1.jsp :
<%@ page contentType="text/vnd.wap.wml;charset=gb2312" %>
<%@ page pageEncoding="ISO-8859-1"%>
<?xml version="1.0" ?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="test1" title="汉字输入">
<p>
姓名<input name="name" size="10"/><br/>
号码<input name="id" format="*N" size="12"/><br/>
<anchor>确定
<go href="test2.jsp" method="post">
<postfield name="name" value="name"/>
<postfield name="id" value="id"/>
</go>
</anchor>
</card>
</wml>
//以上使用 go method=”post”> 的方法传送参数,用get好像不行
接收页面test2.jsp :
<%@ page contentType="text/vnd.wap.wml;charset=utf-8" %>
<?xml version="1.0" ?>
<!DOCTYPE wml PUBLIC "-//WAPFORUM//DTD WML 1.1//EN" "http://www.wapforum.org/DTD/wml_1.1.xml">
<wml>
<card id="test2" title="汉字接收">
<%
request.setCharacterEncoding("utf-8";
String name=request.getParameter("name";
String id=request.getParameter("id";
%>
<p>姓名:<%=name%></p>
<p>id:<%=id%></p>
<do type="prev" label="返回上页">
<prev/>
</do>
</card>
</wml>
把2个文件保存成为utf-8文件格式就可以了。
我的感觉主要是
request.setCharacterEncoding(”utf-8″;
起到很大作用, 如果输入页面是gb2312 格式
接受页面则要使用
request.setCharacterEncoding(”gb2312″;
建议还是使用utf-8,因为移动网关用utf-8