1

サーバーの1つでFTPを実行するためにFTPClientを使用しています。ファイルのすべてのリストを取得できますが、それらのファイルを読み取ろうとすると、「接続が閉じられました」、「接続が拒否されました」、「接続がリセットされました」という例外が表示されます。FTPに次のコードを使用しています

  FTPClient client = new FTPClient();
  client.connect("IpAddress");
  client.login("Username", "Password");
  client.setRemoteVerificationEnabled(false);
  client.enterLocalPassiveMode();
  FTPFile[] files = client.listFiles(dirPath);

上記のコードはすべてのファイル名を私に与えており、これらの名前を検索オブジェクトに渡しています。同じ「クライアント」オブジェクトを使用しています

 InputStream in = client.retrieveFileStream("filename with path as a string");
 try(BufferedReader reader = new BufferedReader(new InputStreamReader(in))) {
       while (null != reader && (line = reader.readLine()) != null) {
            if (null != line && line.contains(wordToSearch)) {
              System.out.println("word Found");
            }
        }

そのフォルダにはファイルが多すぎます。すべてのファイルを取得できますが、読み取り時に失敗するのはなぜですか。

例外は:

java.net.ConnectException: Connection refused: connect
    at java.net.DualStackPlainSocketImpl.connect0(Native Method)
22:57:22,594  INFO Connector:38 - Traversing and Searching Finished......
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:339)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:200)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:182)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:579)
    at org.apache.commons.net.ftp.FTPClient._openDataConnection_(FTPClient.java:894)
    at org.apache.commons.net.ftp.FTPClient._openDataConnection_(FTPClient.java:759)
    at org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:3293)
    at org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:3271)
    at org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2930)
    at com.novigolabs.connectors.FtpConnector.listFiles(FtpConnector.java:44)
    at com.novigolabs.connectors.FtpConnector.listFiles(FtpConnector.java:55)
    at com.novigolabs.search.Traverse.initiateSearch(Traverse.java:117)
    at com.novigolabs.search.Traverse.run(Traverse.java:45)
    at java.lang.Thread.run(Thread.java:724)
4

0 に答える 0