2017-06-10 13 views
-1

私はアクセス権を持っている特定のURLからコンテンツを読み取ろうとしています。問題に直面していました。だから私は基本的な例から始めましたhereデータを読み取ることができません

私はConnectionExceptionに直面しています。

public class UrlReader { 
    public static void main(String[] args) throws Exception { 

      System.setProperty("http.proxyHost","http://www.oracle.com/"); 
      System.setProperty("http.proxyPort", "8081"); 

     Authenticator.setDefault(new Authenticator() { 
      protected PasswordAuthentication getPasswordAuthentication() { 

       return new PasswordAuthentication("doaminName\\username","password".toCharArray()); 
      } 
     }); 

     URL url = new URL("http://www.oracle.com/"); 
     URLConnection con = url.openConnection(); 

     BufferedReader in = new BufferedReader(new InputStreamReader(
       con.getInputStream())); 

     // Read it ... 
     String inputLine; 
     while ((inputLine = in.readLine()) != null) 
      System.out.println(inputLine); 

     in.close(); 


     /* URL oracle = new URL("http://www.oracle.com/"); 
     BufferedReader in = new BufferedReader(
       new InputStreamReader(oracle.openStream())); 

     String inputLine; 
     while ((inputLine = in.readLine()) != null) 
      System.out.println(inputLine); 
     in.close();*/ 
    } 
} 

例外:

Exception in thread "main" java.net.ConnectException: Connection refused: connect 
    at java.net.DualStackPlainSocketImpl.connect0(Native Method) 

私はそれを解決するためにいくつかのオンラインのリンクをたどったがありません成功してきました。 作業用ノートパソコンから作業中に、この種の問題に直面した人はいませんでした。 私はいくつかのURLに接続し、そのURLからjavaを使用してコンテンツを読みたいと思います。

+0

'https:// www.oracle.com /'を試したことがありますか?そのページはhttpsです。 –

+0

はい、同じ例外例外 "main"スレッドjava.net.ConnectException:Connection refused:connect。これは、ファイアウォールがあるかもしれない私の仕事のラップトップから試しているからです(わからない)。 @GlenPierce – user8115347

+0

www.oracle.comはHTTPプロキシ・ホストではなく、www.oracle.com:8081はHTTPプロキシ・ポートではありません。自分自身をプロキシとして使用しているホストに接続しようとしても意味をなさない。 「Connection refused」は「データを読み取ることができません」という意味ではありません。あなたの質問は理にかなっていません。 – EJP

答えて

0
System.setProperty("http.proxyHost","http://www.oracle.com/"); 
System.setProperty("http.proxyPort", "8081"); 

Oracleは、外の世界に、おそらくでは、すべてのポート8081上でHTTPプロキシサービスを提供する、またはしません。これらの2行のコードは意味がありません。特に、ターゲットURLがwww.oracle.comである場合は、意味がありません。削除してください。

+0

自分の投稿に自分のコードがある場合、最初は私がSystem.setPropertyを使用していないコメント付きコードで試しました。同じ問題に直面していました。それはいくつかのファイアウォールのためですか? – user8115347

+0

本当ですか?同じ問題?接続拒否?私はこのブラウザからアクセスできる公開Webサーバーに?私はそうは思わない。あなた自身の*ファイアウォールが途中で止まっていない限り。 – EJP

+0

はい、会社の(仕事用)ラップトップを使用しているので、自分のファイアウォールを信じています。これを解決する方法はありますか? – user8115347

関連する問題