Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/apache-kafka/3.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 openStream错误_Java_Iostream - Fatal编程技术网

Java openStream错误

Java openStream错误,java,iostream,Java,Iostream,我使用的是openStream方法和Java in = new BufferedReader(new InputStreamReader(url.openStream(), "UTF-8")); 该方法等待来自发送URL的服务的响应的时间有多长 我也会收到这样的错误信息,我不知道为什么 java.net.UnknownHostException: dev.virtualearth.net at java.net.PlainSocketImpl.connect(U

我使用的是openStream方法和Java

in = new BufferedReader(new InputStreamReader(url.openStream(), "UTF-8"));
该方法等待来自发送URL的服务的响应的时间有多长

我也会收到这样的错误信息,我不知道为什么

java.net.UnknownHostException: dev.virtualearth.net

               at java.net.PlainSocketImpl.connect(Unknown Source)
               at java.net.Socket.connect(Unknown Source)
               at java.net.Socket.connect(Unknown Source)
               at sun.net.NetworkClient.doConnect(Unknown Source)
               at sun.net.www.http.HttpClient.openServer(Unknown Source)
               at sun.net.www.http.HttpClient.openServer(Unknown Source)
               at sun.net.www.http.HttpClient.<init>(Unknown Source)
               at sun.net.www.http.HttpClient.New(Unknown Source)
               at sun.net.www.http.HttpClient.New(Unknown Source)
               at sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(Unknown Source)
               at sun.net.www.protocol.http.HttpURLConnection.plainConnect(Unknown Source)
               at sun.net.www.protocol.http.HttpURLConnection.connect(Unknown Source)
               at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source)
               at java.net.URL.openStream(Unknown Source)
java.net.UnknownHostException:dev.virtualearth.net
位于java.net.PlainSocketImpl.connect(未知源)
位于java.net.Socket.connect(未知源)
位于java.net.Socket.connect(未知源)
位于sun.net.NetworkClient.doConnect(未知源)
位于sun.net.www.http.HttpClient.openServer(未知来源)
位于sun.net.www.http.HttpClient.openServer(未知来源)
在sun.net.www.http.HttpClient。(来源不明)
位于sun.net.www.http.HttpClient.New(未知来源)
位于sun.net.www.http.HttpClient.New(未知来源)
位于sun.net.www.protocol.http.HttpURLConnection.getNewHttpClient(未知源)
位于sun.net.www.protocol.http.HttpURLConnection.plainConnect(未知源)
位于sun.net.www.protocol.http.HttpURLConnection.connect(未知源)
位于sun.net.www.protocol.http.HttpURLConnection.getInputStream(未知源)
位于java.net.URL.openStream(未知源)
谢谢

openStream()
方法是
URL.openConnection().getInputStream()的快捷方式

您可以自己设置超时:

URLConnection con = url.openConnection();
con.setConnectTimeout(XXX);
来自JDK: 如果在建立连接之前超时过期,则会引发java.net.SocketTimeoutException。零超时被解释为无限超时

默认超时为0


您的异常“抛出以指示无法确定主机的IP地址。”

意味着您的DNS配置不正确,因为java不知道如何将dev.virtualearth.net解析为IP地址。您正在打开的URL的字符串表示形式是什么?

您可能在防火墙后面,因此可以添加:

setProperty(“java.net.useSystemProxies”,“true”)//如果已设置系统代理

System.setProperty(“http.proxySet”、“true”)

System.setProperty(“proxyPort”、“port”)

set属性(“proxyHost”、“proxyHost”)

System.setProperty(“http.proxyUser”、“user”)

set属性(“http.proxyPassword”、“password”)


到相关的java类

是的,我可以。这段代码在相同的时间内工作,我使用的是URL对象。和http://.. 当我用我的网络浏览器呼叫它时,它会给我一个回应。我认为这也是DNS配置的问题。你知道这到底是什么问题吗?你的浏览器正在通过HTTP代理吗?如果是这样,您还需要为URL连接配置它。你可以在Thank You上找到关于它的信息。如果这是一个代理设置问题,为什么它以前工作相同的时间?这是未知的。您可以尝试使用您知道有效的IP,例如您能够ping它时得到的IP。如果它工作一致,那么您知道您有一个DNS错误,这可能是网络中的一些问题。我想如果您尝试的足够多,您的浏览器将出现与您看到的相同的错误-可能浏览器也使用了缓存的dns响应。http.proxySet是一个城市神话。它没有效果。