1

Apache ftpserver (Java) を使用しています。ファイルが ftp 経由でアップロードされたときに、プログラムに通知が必要です。可能のようですが、やり方がわかりません。

そこに解決策はありますか?

mina.apache.org/ftpserver

4

2 に答える 2

3

ftplet を使用してすべての通知を取得できます。これをチェックしてください... http://apilevel.wordpress.com/2011/05/12/ftplet-servlet-for-apache-ftpserver/

于 2012-07-13T07:34:49.967 に答える
1

私は、ftpserver 自体で実行されているデスクトップ プログラムを持っていると仮定しています。そのため、ファイルが同じ ftpserver にアップロードされるとすぐに、プログラムはそれに通知する必要があります...そうです.!!

どれどれ....

  1. ファイルがアップロードされるディレクトリを ftp サーバーに作成したと確信しています。

  2. 同じサーバー上で実行されているこのプログラムを作成して、そのフォルダー/ディレクトリ内のファイルの総数を2分ごとに、または要件に従って確認し続けます..プログラムがファイルの数が増加したことに気付いたら、私はプログラムで何らかのイベントを発生させて通知します。

どうやってするの...

  1. ファイルの数が変更された場合にディレクトリをループし続けるために、別のスレッドを作成します。Event Dispatcher スレッドにそれを行わせないでください。そうしないと、GUI がハングします。

  2. 以下のロジックを試してください..

    private static int max = 0;    // i am assuming the folder is Empty.
    
     while(true) {
    
     File f = new File("path_of_files_on_ftp_server");
     File[] farr = f.listFiles();
    
     if ( farr.length > max ){
    
               // There has been an upload......
               // Raise the alarm here, by doing some event....
               max = farr.length ;
    
    
         }
    
     else {
    
           continue;
         }
    

    }

于 2012-06-29T18:27:50.050 に答える