我是春天新手。我使用spring从远程服务器获取文件。
<?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:sftp="http://www.springframework.org/schema/integration/sftp"
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">
<bean id="sftpSessionFactory"
class="org.springframework.integration.sftp.session.DefaultSftpSessionFactory">
<property name="host" value="xxxxxxxx" />
<property name="user" value="wildfly" />
<property name="password" value="w!ldfly" />
<property name="port" value="22" />
</bean>
<int:channel id="sftpChannel" />
<sftp:inbound-channel-adapter id="triggerFtpInBound" auto-create-local-directory="true"
local-directory="/tmp/test" filename-pattern="*" channel="sftpChannel"
session-factory="sftpSessionFactory" remote-directory="/home/wildfly" delete-remote-files="true">
<int:poller cron="1/10 * * * * *" max-messages-per-poll="1" />
</sftp:inbound-channel-adapter>
我正在使用以下代码。
ApplicationContext context = new ClassPathXmlApplicationContext("spring/config/spring-sftp.xml");
我运行时没有收到任何错误,但我也没有复制任何文件。请告诉我代码中的错误。提前谢谢。
答案 0 :(得分:1)
仅仅查看静态配置很难调试。
第一步是打开org.springframework.integration
的DEBUG记录,看看发生了什么。
如果你无法从日志中找出来,请将它们发布;如果这里太大了,请使用github gist,pastebin或类似内容。
Spring Integration使用了jsch;您可以按照in the reference manual所述启用其日志记录。
答案 1 :(得分:1)
添加“KnownHosts”属性解决了我的问题。我现在正在转移文件。
<property name="knownHosts" value = "C:\knownhosts"/>