• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:FTPClientで転送結果(OKかFAIL))

ファイル転送結果を取得する方法とファイルアップロードの仕様について

このQ&Aのポイント
  • org.apache.commons.net.ftp.FTPClientを使ってファイル転送をしています。storeFileした結果を取得する方法と、ファイルアップロードの仕様について質問です。
  • ファイル転送時に時折ファイルサイズが0になってしまう現象が発生しています。一回目のアップロード結果を別の方法で取得することはできるでしょうか?また、複数ファイルアップロード時にログインとログアウトを繰り返す必要はあるのでしょうか?
  • 現在の仕様ではログイン⇒処理⇒ログアウト⇒ログイン⇒処理⇒ログアウトという処理になっていますが、この処理方法がファイルアップロードの失敗の原因になっているのではないかと危惧しています。また、ftpのモードはpassvにする必要があるのでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • askaaska
  • ベストアンサー率35% (1455/4149)
回答No.1

環境がないのであくまで推測でのコメント アップロードに失敗しているときって 例外が発生したりはしていないの? 複数アップロードのときは このメソッドの外でFTPをOPEN/CLOSEすれば いいだけじゃないのかな? ダメだったらゴメンなさい

tori1202
質問者

お礼

お返事ありがとうございます。 例外は発生していないので、ftpの問題と気づくまで時間がかかってしまいました。 一応try catchしているのですが… ftp(vsftp)のログを見ると下記の様にFAILとなっていたので、FTP失敗してるんだと なったわけです。 Wed Apr 4 12:10:04 2012 [pid xxxxx] [hoge] FAIL UPLOAD: Client "xxx.xxx.xxx.xxx", "/home/release/html/xxx.html", 0.00Kbyte/sec Thu Apr 5 11:00:02 2012 [pid xxxxx] [hoge] FAIL DOWNLOAD: Client "xxx.xxx.xxx.xxx", "/home/release/html/xxxx.gif", 0.00Kbyte/sec そうですね、複数アップロードの時はご指摘の通り接続をこのメソッドの外で 行うように変更する予定です。 ただ、いろいろと調べるとftpで複数ファイルアップの際はPASSIVモードじゃないと失敗する 確率が高そうな感じだったので、単にメソッドの仕様を変更するだけではだめのか??と 疑問に思っているところ(調査継続中です)です。

関連するQ&A