Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java servlet';s参数值不被解码_Java_Url_Servlets_Encoding_Getparameter - Fatal编程技术网

Java servlet';s参数值不被解码

Java servlet';s参数值不被解码,java,url,servlets,encoding,getparameter,Java,Url,Servlets,Encoding,Getparameter,我对Javaservlet的getParameter()有一些问题,尽管我已经在server.xml中正确设置了Tomcat的编码,但它没有解码param <Connector port.. URIEncoding="UTF-8"/> 我得到的结果如下: 字符编码:UTF-8 查询字符串:名称=日本語一番ぜソFOX_&'">•«Ç€Ö™»我理解这与GET请求有关。设置应该这样做。它不起作用只能意味着您是从Eclipse这样的IDE内部运行Tomcat,并且IDE没有被配置为在您编

我对Javaservlet的getParameter()有一些问题,尽管我已经在server.xml中正确设置了Tomcat的编码,但它没有解码param

 <Connector port.. URIEncoding="UTF-8"/>
我得到的结果如下:

字符编码:UTF-8


查询字符串:名称=日本語一番ぜソFOX_&'">•«Ç€Ö™»我理解这与GET请求有关。设置
应该这样做。它不起作用只能意味着您是从Eclipse这样的IDE内部运行Tomcat,并且IDE没有被配置为在您编辑Tomcat自己的配置时接管Tomcat自己的配置
/conf/server.xml
中的配置

不清楚您使用的是哪个IDE,但是如果它是Eclipse,您需要在工作区的Servers项目中编辑
server.xml
文件,而不是Tomcat自己的
/conf/server.xml
文件

或者通过双击Servers视图中的Tomcat服务器条目并相应地更改ServerLocations部分,配置Eclipse以控制Tomcat的安装

回到您的调查/修复尝试:
request.getCharacterEncoding()
没有被用来解码GET查询字符串(因为这超出了Servlet API的控制范围),它只被用来解码请求后的正文。
只会设置响应的字符编码,然后提交后续表单

另见

Tomcat前面有Apache服务器吗?您是否直接连接到Tomcat?我发现问题在于我安装了,而不是感谢BalusC的详细回复。非常感谢。我正在使用eclipse IDE中正确的server.xml。我发现问题在于我安装了,而不是
 protected void service(HttpServletRequest request, HttpServletResponse response) 
                throws ServletException, IOException {
    System.out.println("CharacterEncoding: "+ request.getCharacterEncoding());
    System.out.println("Query String: "+ URLDecoder.decode(request.getQueryString(), "UTF-8");
    System.out.println("Query param name: "+request.getParameter("name"));
    ...