Bagaimana cara memindahkan file dari sistem lokal ke FTP jarak jauh menggunakan adaptor SFTP. Saya akan melihat contoh-contohnya dan semuanya menyebutkan untuk menyalin file dari FTP jarak jauh ke mesin lokal.
Saya perlu memindahkan file dari mesin lokal ke folder sistem jarak jauh.
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:int="http://www.springframework.org/schema/integration"
xmlns:int-sftp="http://www.springframework.org/schema/integration/sftp"
xmlns:file="http://www.springframework.org/schema/integration/file"
xsi:schemaLocation="
http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/integration
http://www.springframework.org/schema/integration/spring-integration.xsd
http://www.springframework.org/schema/integration/sftp
http://www.springframework.org/schema/integration/sftp/spring-integration-sftp- 2.2.xsd
http://www.springframework.org/schema/integration/file
http://www.springframework.org/schema/integration/file/spring-integration-file-2.2.xsd">
<bean id="sftpSessionFactory" class="org.springframework.integration.sftp.session.DefaultSftpSessionFactory">
<property name="host" value="localhost"/>
<property name="user" value="user01"/>
<property name="password" value="abc123"/>
<property name="port" value="990"/>
</bean>
<int:channel id="sftpChannel"/>
<file:inbound-channel-adapter directory="#{T(System).getProperty('java.io.tmpdir')}" id="fileInbound"
channel="sftpChannel" filename-pattern="*.xml">
<int:poller fixed-rate="1000" max-messages-per-poll="100"/>
</file:inbound-channel-adapter>
<int-sftp:outbound-channel-adapter id="sftpOutboundAdapter" session-factory="sftpSessionFactory"
channel="sftpChannel" charset="UTF-8" remote-directory="/"
remote-file-separator="/"/>
</beans>
<file:outbound-channel-adapter id="moveProcessedFile"
channel="sftpChannel"
directory="file:#{configurationService.configuration.getProperty('acal.jde.publish.folder')}/processed"
delete-source-files="true" order="2" />
Saya mencobanya tetapi tidak dapat memindahkan file ke folder yang diproses.
outbound-channel-adapter
untuk memasukkan file ke SFTP. Apa yang Anda gunakan untuk memasukkan muatan Anda keinputChannel
? - person Dmitry Kuskov   schedule 24.09.2013outbound-channel-adapter
, Anda hanya menentukan saluran input. Dan cara Anda memasukkan data ke dalam saluran ini terserah Anda: Anda dapat, misalnya, membuat rantai yang akan membaca direktori lokal dan menulis payload keinputChannel
, atau Anda dapat membaca file dan memasukkannya sebagai payload secara manual dalam pekerjaan jagung, dan banyak pilihan lainnya, Anda harus memutuskan mana yang paling cocok untuk Anda. Di tautan yang saya berikan di atasMessageChannel.send
dipanggil secara eksplisit dan contoh saluran diperoleh dari konteks aplikasi - itu juga merupakan opsi. - person Dmitry Kuskov   schedule 24.09.2013sftpSessionFactory
sebagaichannel
diinbound-channel-adapter
? Ini harus menentukan saluran pesan ke mana payload akan diteruskan, jadi dalam kasus Anda sepertinyapublishToSFTPChannel
. Dan mengapa menggunakanpublish-subscribe-channel
? Saluran point-to-point yang sederhana sudah cukup. - person Dmitry Kuskov   schedule 24.09.2013