0

コードを介してsftpアウトバウンドエンドポイントを呼び出し、ファイルを送信することは可能ですか?Javaコード(カスタムトランスフォーマー内)でFileオブジェクトへの参照があり、sftpアウトバウンドエンドポイントを呼び出してそのファイル参照を渡したいと思います。これは実行可能ですか?ありがとう。

4

1 に答える 1

1

を渡すと、FileInputStreamうまくいくはずです。

muleContext.getClient().dispatch("sftp://...", new FileInputStream(file), null);

そうでない場合は、 を渡す必要がありますbyte[]

は非同期であることに注意してくださいdispatch。SFTP 通信が発生している間、呼び出しはすぐに返されます。完了するまで待ちたい場合はsend、タイムアウトを最後のパラメーターとして使用します。

複数の SFTP コネクタが構成されているため、URL でコネクタ名を指定する必要があります。を使用してディスパッチしたい場合SFTP_Upload_Connector、次を使用する必要があります。

muleContext.getClient().dispatch("sftp://...?connector=SFTP_Upload_Connector", new FileInputStream(file), null);

特定の宛先ファイル名を設定する場合filenameは、プロパティ マップで指定されたプロパティとして渡します。たとえば、次のように使用します。

muleContext.getClient().dispatch("sftp://...?connector=SFTP_Upload_Connector", new FileInputStream(file), Collections.singletonMap("filename", "somen_ame"));
于 2012-11-02T15:21:54.077 に答える