【发布时间】:2016-06-03 06:56:18
【问题描述】:
我正在尝试执行 SOAP Web 服务自动化,我在执行时发现了一个异常。当我尝试运行/调试时抛出 java.io.FileNotFoundException,我还发现我收到的响应代码是 404。我正在使用 JKS 格式的密钥库以确保安全。
代码:
HttpURLConnection httpConnection = null;
String strResponse = null;
java.net.URL url = new URL(strURL);
if (url.getProtocol().equalsIgnoreCase("http")) {
httpConnection = (HttpURLConnection) url.openConnection();
}
httpConnection.setDoOutput(true);
httpConnection.setDoInput(true);
httpConnection.setRequestMethod("POST");
OutputStreamWriter writer = new OutputStreamWriter(httpConnection.getOutputStream());
writer.write(wsRequestString);
writer.close();
System.out.println(httpConnection.getResponseCode());
if (httpConnection.getResponseCode() == HttpURLConnection.HTTP_OK) {
System.out.println(httpConnection.getInputStream());
}
当我尝试执行 httpConnection.getInputStream() 时,它会抛出 java.io.FileNotFoundException。此外,我作为参数发送的 URL 也是有效的。此异常的可能原因是什么?
【问题讨论】:
-
您无法从输入流中打印,请尝试将其转换为字符串,stackoverflow.com/questions/309424/…
-
即便如此我还是得到了 java.io.FileNotFoundException: "URL name" 的错误
-
您不能同时获得 404 和 200,只有在获得 200 时才调用
getInputStream()。这是真正的代码吗? -
是的,正如你所说,我得到了 404 代码,这就是它没有进入 if 条件的原因。然后我添加了一行 System.out.println(httpConnection.getInputStream());在 if 条件之后,我得到 FileNotFoundException
-
那么为什么我会收到 404 响应代码?有什么想法吗?
标签: java http soap httpurlconnection