回答編集履歴

3

再々修正

2015/03/03 15:20

投稿

argius
argius

スコア9390

test CHANGED
@@ -2,13 +2,37 @@
2
2
 
3
3
 
4
4
 
5
- 元のコードで同じ問題が発生することを確認しました。
5
+ 元のコードで同じ問題が発生することを確認しました。
6
6
 
7
7
 
8
8
 
9
- 参考にされたコードの`printFtpReply`を消しったのが問題のようです。
9
+ lockファイルの送信後はステータス150が返されてます。
10
10
 
11
+ これはデータコネクション(ファイル転送のためのコネクション)が確立した状態のままになっていて、転送が完了していないということなのではないかと思います。
12
+
13
+
14
+
15
+ 正しい解決方法かどうか自信がありませんが、lockファイルの転送後に`ftpClient.getReply();`を入れることで、転送が終わったことを通知できるようです。つまり、`226 Transfer Complete`になります。
16
+
17
+
18
+
19
+
20
+
21
+ ```lang-java
22
+
23
+ //ロックファイル作成
24
+
25
+ OutputStream out = ftpClient.storeFileStream("0001.lock");
26
+
27
+ out.close();
28
+
11
- `ftpClient.getReplyCode()`をするとに意味があるのだと思います。
29
+ ftpClient.getReply(); // ◆◆ こ ◆◆
30
+
31
+ ```
32
+
33
+
34
+
35
+
12
36
 
13
37
 
14
38
 

2

printFtpReplyの件を追記

2015/03/03 15:20

投稿

argius
argius

スコア9390

test CHANGED
@@ -6,15 +6,9 @@
6
6
 
7
7
 
8
8
 
9
- lockファイルの送信後はステータス150が返されてます。
9
+ 参考にされたコードの`printFtpReply`を消しったのが問題のようです。
10
10
 
11
- これはデータコネクション(ファイル転送のためのコネクション)が確立した状態のままになっていて、転送が完了していないということなのではないかと思います。
12
-
13
-
14
-
15
- 正しい解決方法かどうか自信がありませんが、ファイルの転送後(`OutputStream#close`の後)に`ftpClient.getReply();`を入れることで、転送が終わったことを通知できるようです。つまり、`226 Transfer Complete`になります。
16
-
17
- 念のため、`UPLOAD_FILE`の後も入れておいた方
11
+ `ftpClient.getReplyCode()`をすること意味あるのだと思す。
18
12
 
19
13
 
20
14
 

1

getReply()を追記

2015/03/03 15:06

投稿

argius
argius

スコア9390

test CHANGED
@@ -1,3 +1,31 @@
1
+ (追記)
2
+
3
+
4
+
5
+ 元のコードで同じ問題が発生することを確認しました。
6
+
7
+
8
+
9
+ lockファイルの送信後にはステータス150が返されています。
10
+
11
+ これはデータコネクション(ファイル転送のためのコネクション)が確立した状態のままになっていて、転送が完了していないということなのではないかと思います。
12
+
13
+
14
+
15
+ 正しい解決方法かどうか自信がありませんが、ファイルの転送後(`OutputStream#close`の後)に`ftpClient.getReply();`を入れることで、転送が終わったことを通知できるようです。つまり、`226 Transfer Complete`になります。
16
+
17
+ 念のため、`UPLOAD_FILE`の後にも入れておいた方が良いですね。
18
+
19
+
20
+
21
+ ---
22
+
23
+
24
+
25
+ (最初の回答)
26
+
27
+
28
+
1
29
  下記ページにあるように、それぞれの処理後に`ftpClient.getReplyString()`を出力して、応答の内容を確認してみてください。
2
30
 
3
31
  [JavaでFTPアップロードを行う。 - sinsengumi血風録](http://sinsengumi.net/blog/2011/02/java%E3%81%A7ftp%E3%82%A2%E3%83%83%E3%83%97%E3%83%AD%E3%83%BC%E3%83%89%E3%82%92%E8%A1%8C%E3%81%86%E3%80%82/)