对于这个链接http://bits.blogs.nytimes.com/2014/09/02/uber-banned-across-germany-by-frankfurt-court/?partner=rss&emc=rss,这段代码不起作用,但如果我把另一个代码作为例子:https://www.google.com一切正常:
URL url = new URL("http://bits.blogs.nytimes.com/2014/09/02/uber-banned-across-germany-by-frankfurt-court/?partner=rss&emc=rss");
URLConnection uc;
uc = url.openConnection();
uc.setRequestProperty("User-Agent", "Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10_6_7; en-US) AppleWebKit/534.16 (KHTML, like Gecko) Chrome/10.0.648.205 Safari/534.16");
uc.addRequestProperty("referer", "http://www.facebook.com");
uc.connect();
this.input = uc.getInputStream();
我得到了这个例外:
java.lang.IllegalArgumentException: protocol = http host = null
at sun.net.spi.DefaultProxySelector.select(DefaultProxySelector.java:170)
at sun.net.www.protocol.http.HttpURLConnection.plainConnect(HttpURLConnection.java:926)
at sun.net.www.protocol.http.HttpURLConnection.connect(HttpURLConnection.java:850)
at sun.net.www.protocol.http.HttpURLConnection.followRedirect(HttpURLConnection.java:2398)
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1557)
at UrlParser.<init>(UrlParser.java:48)
at TikaParser.test_url_parser(TikaParser.java:186)
at TikaParser.run(TikaParser.java:256)
at java.lang.Thread.run(Thread.java:745)
我的代码出了什么问题?
答案 0 :(得分:25)
当网址以http:/
而不是http://
开头时,我遇到了同样的异常。例如http:/www.example.com
这是org.springframework.web.client.RestTemplate.exchange()
方法,因此上下文不完全相同,但可能是类似问题。
答案 1 :(得分:0)
看起来您的代理主机未设置。尝试设置它,然后它应该工作。
有关代理属性的详细信息,请参阅this page。
答案 2 :(得分:0)
大多数此错误是由于网址错误引起的。确保您输入的网址正确无误。正如前面提到的wsams一样,请尝试检查网址中的//是否正确。 正确的格式是http://localhost:8080