まず、私の下手な英語で申し訳ありません。
問題は、ローカル FTP サーバーにファイル (.xls) ファイルをアップロードできないことです。
これは例外です:
[org.apache.camel.component.file.GenericFileOperationFailedException - Error writing file GAS_EAV_EMV.xls]
これは私のルートです:
<route id="sendFtp">
<from uri="direct:sendFtp"/>
<setHeader headerName="CamelFileName">
<simple>GAS_EAV_EMV.xls</simple>
</setHeader>
<process ref="egssisFtpProcessor"/>
<to uri="ftp://foo@127.0.0.1:21/?password=pwd"/>
</route>
ここで、ファイルを添付するプロセッサ:
public class EgssisFtpProcessor implements Processor {
@Override
public void process(Exchange exchange) throws Exception {
String filename = exchange.getIn().getHeader(Exchange.FILE_NAME, String.class);
exchange.getIn().addAttachment(filename, new DataHandler(new FileDataSource(filename)));
}
}
交換オブジェクトには、プロセッサの最後にアタッチメントがあります。
SMTP プロトコルでは機能しますが、FTP では機能しません。
何か案が ?
サーバーログ:
[14:29:29] - [78] Connecté à 127.0.0.1. Collecte du Nom d'utilisateur.
[14:29:29] - [78] Usager FOO Connecté IP: 127.0.0.1
[14:29:29] - [78] FOO : Répertoire en Cours: C:\tmp\
[14:29:29] - [78] Client 127.0.0.1 Déconnecté (00:00:00 Min)