2013-01-15 3 views
0

FTP에서 파일을 복사하려고하는데 로컬 시스템에 배치하려고합니다.인바운드 채널이 스프링에서 작동하지 않습니다.

<bean name="publishStockSessionFactory" 
     class="org.springframework.integration.ftp.session.DefaultFtpSessionFactory"> 
    <property name="host" 
     value="10.255.255.1" /> 
<property name="port" value="21" /> 
    <property name="username" 
     value="test" /> 
    <property name="password" 
     value="test" /> 
</bean> 

<bean id="stockLocalDirectory" class="java.lang.String"> 
    <constructor-arg 
     value="/opt/test" /> 
</bean> 

<bean id="stockRemoteDirectory" class="java.lang.String"> 
    <constructor-arg 
     value="stock" /> 
</bean> 

<int-ftp:inbound-channel-adapter 
    local-directory="# {stockLocalDirectory}"    
    channel="stockFilesFromFTP" 
    session-factory="publishStockSessionFactory" 
    remote-directory="#{stockRemoteDirectory}" 
    delete-remote-files="true" 
    filename-regex="Stock*.csv" > 
    <int:poller fixed-rate="120000" max-messages-per-poll="100" /> 
</int-ftp:inbound-channel-adapter> 

<int:publish-subscribe-channel id="stockFilesFromFTP" /> 

그리고 시작하는 동안 오류가오고가

INFO | jvm 1 | main | 2013/01/15 22:20:02.715 | 2013-01-15 22:20:02,699 
ERROR task-scheduler-4  ErrorHandler   : failed to send message 
to channel 'stockFilesFromFTP' within timeout: -1 

우리가

log4j.logger.org.springframework.aop=DEBUG 
org.springframework.integration.channel.DirectChannel=DEBUG 
org.springframework.integration.channel.MessagePublishingErrorHandler=DEBUG 
org.springframework.integration.config.xml.PointToPointChannelParser=DEBUG 

있습니다 당신 수 켜져 디버그합니다 수 있습니다 :이 들어

나는 인바운드 채널 구성이 생성 이 오류를 어떻게 디버깅 할 수 있는지 제안 해주십시오.

답변

0

DEBUG 레벨 로깅으로 실행하십시오.

채널 stockFilesFromFTP에 가입자가 한 명 이상 있어야합니다.

+0

감사합니다. 위의 디버그는 켜져 있지만 로그에는 정보가 없습니다. 위의 구성에서 채널 구독자를 추가했습니다. 그게 맞습니까? – sree

+0

org.springframework.integration –

+0

Rusell에 대해 DEBUG를 켭니다. org.springframework.integration을 켜고 통합과 관련된 로그에 정보가 없습니다. 인바운드 인 경우 근본 원인을 어떻게 알 수 있습니까? – sree

0

FTPclientfactory bean에 대해 다음과 같은 종류의 구성을 사용했습니다. 시간 초과 매개 변수도 있으므로 연결 시간 제한으로 인해 문제가 발생하는 경우이 방법으로 도움이됩니다.

<bean id="testapp.standardFTPClientFactory" class="org.springframework.integration.ftp.DefaultFTPClientFactory" 
     abstract="true"> 
     <property name="host" value="${ftp.host}"/> 
     <property name="username" value="${ftp.username}"/> 
     <property name="password" value="${ftp.password}"/> 
     <property name="port" value="${ftp.port}"/> 
     <property name="remoteWorkingDirectory" value="${ftp.remotedir}"/> 
     <property name="dataTimeout" value="3600000"/> 
     <property name="connectTimeout" value="${ftp.connectTimeout}"/> 
     <property name="clientMode" value="2"/> 
</bean> 
관련 문제