ネットワーク接続の問題を管理できる ftpClient インターフェイスを実装しようとしています。この目的のために ftp4j ライブラリを使用しています。
ファイルを正常にアップロードできますが、ファイルのアップロード プロセス中に接続エラーが発生すると、いくつかの問題が発生します。接続の問題で前回のアップロード試行が終了した直後に、ファイルを再アップロード (追加ではなく、やり直すだけ) できるようにしたいと考えています。
場合によっては、前回の試行が失敗してから数秒または数分後にファイルのアップロードを再試行すると、次のようになります。
it.sauronsoftware.ftp4j.FTPException [code=550, message= Access is denied. ]
at it.sauronsoftware.ftp4j.FTPClient.upload(FTPClient.java:2794)
at it.sauronsoftware.ftp4j.FTPClient.upload(FTPClient.java:2586)
しばらく待ってから再試行すると、ファイルを FTP サーバーにアップロードできます。
私のftpClientに設定できるパラメータはありますか:
...
FTPClient client = new FTPClient();
try {
client.setType(FTPClient.TYPE_BINARY);
client.connect(ipAddress, port);
client.login(userName, password);
System.out.println("Connected to FTP Server!");
...
}
...
if(ftpClient.isResumeSupported()) {
System.err.println("FTP Server supports resume. Trying to upload file");
ftpClient.upload(localFile, writtenBytes, new Ftp4jListener());
} else {
System.err.println("FTP Server does NOT supports resume. Trying to upload file");
ftpClient.upload(localFile, new Ftp4jListener());
}
...
この「アクセスが拒否されました」という問題を克服できるようになりましたか? このような例外の原因は何ですか? 多分サーバーパラメータ?