• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    javascript通过url向jsp页面传递中文参数导致乱码解决方案
    2013-1-16 10:35:49 org.apache.tomcat.util.http.Parameters processParameters
    警告: Parameters: Character decoding failed. Parameter 'id' with value '%u8BA2%u5355' has been ignored. Note that the name and value quoted here may corrupted due to the failed decoding. Use debug level logging to see the original, non-corrupted values.
    Enter Servlet Get Method..
    OK:
    2013-1-16 10:35:49 org.apache.catalina.core.StandardWrapperValve invoke
    严重: Servlet.service() for servlet suggest threw exception
    java.lang.NullPointerException
    at com.ont.demo.suggest.doGet(suggest.java:25)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:617)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:619)

    解决方法:在传递参数前将中文参数进行两次编码,jsp页面获取参数后对中文参数进行一次解码,中文参数就不会变为乱码了!

    参考例子
    复制代码 代码如下:

    %@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
    %@ page import="java.net.*" %>
    %
    String str0="";
    String str1="";
    if(request.getParameter("param0")!=null){
    str0=request.getParameter("param0");//直接获取中文参数
    }
    try{
    if(request.getParameter("param1")!=null){
    str1=URLDecoder.decode(request.getParameter("param1"),"utf-8");//对中文参数进行解码
    }
    }catch(Exception e){
    e.printStackTrace();
    }
    %>
    !DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    html>
    head>
    meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    script type="text/javascript">
    var str="你好";
    function test0(){
    window.location="Test.jsp?param0="+str;//直接传递中文参数
    }
    function test1(){
    window.location="Test.jsp?param1="+encodeURI(encodeURI(str));//对中文参数进行双层编码后再传递
    }
    /script>
    /head>
    body>
    input value=%=str0 %>>
    input type="button" value="乱码" onclick="test0()">br>
    input value=%=str1 %>>
    input type="button" value="正常" onclick="test1()">
    /body>
    /html>
    您可能感兴趣的文章:
    • jsp中获得路径的两种方法和获得url路径的方法(推荐)
    • jsp Request获取url信息的各种方法对比
    • jsp获取url路径的方法分析
    • JSP对URL链接中的中文乱码处理方法总结
    • jsp中URL传递中文参数的处理方法
    • 在jsp页面如何获得url参数
    • JSP中js传递和解析URL参数以及中文转码和解码问题
    • JSP struts2 url传参中文乱码解决办法
    上一篇:jsp中实现上传图片即时显示效果功能
    下一篇:jsp页面中显示word/excel格式的文档的方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    javascript通过url向jsp页面传递中文参数导致乱码解决方案 javascript,通过,url,向,jsp,