Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.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请求.getParameter()始终返回空值_Java_Servlets - Fatal编程技术网

Java Servlet请求.getParameter()始终返回空值

Java Servlet请求.getParameter()始终返回空值,java,servlets,Java,Servlets,我正在使用HttpPost进行简单的客户机-服务器通信。在客户端,我设置了一个参数filename 在服务器端,当我尝试获取参数值时,它总是显示null。我尝试过使用MultiPartEntity,但即使这样也不起作用 以下是我的客户代码: HttpPost HttpPost=新的HttpPosthttp://xxx.xxx.xxx.xxx:yyyy; InputStreamEntity reqEntity=新的InputStreamEntity 新文件InputStreamDataFile,-

我正在使用HttpPost进行简单的客户机-服务器通信。在客户端,我设置了一个参数filename

在服务器端,当我尝试获取参数值时,它总是显示null。我尝试过使用MultiPartEntity,但即使这样也不起作用

以下是我的客户代码:

HttpPost HttpPost=新的HttpPosthttp://xxx.xxx.xxx.xxx:yyyy; InputStreamEntity reqEntity=新的InputStreamEntity 新文件InputStreamDataFile,-1; reqEntity.setContentTypebinary/octet-stream; //如果需要,发送多个部件 reqEntity.setChunkedtrue; httppost.setEntityreqEntity; //设置参数 httppost.getParams.setParameterfilename,xxxx.xml; HttpResponse response=httpclient.executehtppost; int respcode=response.getStatusLine.getStatusCode; 这是我的servlet代码:

response.setContentTypebinary/octet-stream; Scanner Scanner=new Scannerrequest.getInputStream; //读取参数 字符串文件名=request.getParameterfilename; BufferedOutputStream bos=new BufferedOutputStreamnew FileOutputStreamnew FileC:\\\+文件名; 请让我知道这个问题的任何可能的解决方案


提前谢谢

Ur设置参数错误。。。在客户端,执行以下操作:

ArrayList<NameValuePair> postParameters = postParameters = new ArrayList<NameValuePair>();
postParameters.add(new BasicNameValuePair("filename", "xxxx.xml");
httppost.setEntity(new UrlEncodedFormEntity(postParameters));
HttpResponse response = httpclient.execute(httppost);

谢谢你的回复。我已经在设置reqEntity,httppost.setEntityreqEntity;如果我现在按照你的逻辑,我不会在文件中写入源数据。可以设置多个实体吗?您可以通过两个请求来实现这一点。首先设置并执行上述应答中提到的文件名。在读取输入流之前在servlet中接收它,并在第二个请求中发送ur流