0

Wir haben einen SFTP-Server, wo wir Datei bestimmten Ordner auf diesem Server lesen.Ich benutze Benutzer/Passwort-basierte Authentifizierung muss ich einige andere Eigenschaften auch in DefaultSftpSessionFactory bereitstellen . Unten ist meine Konfiguration.SFTP Spring Integration Problem 2 Zu viele Authentifizierungsfehler für * Benutzername *

<beans:bean id="sftpSessionFactory" 
    class="org.springframework.integration.sftp.session.DefaultSftpSessionFactory"> 
    <beans:property name="host" value="${turboFtp.host}" /> 
    <beans:property name="allowUnknownKeys" value="true" /> 
    <beans:property name="user" value="${turboFtp.username}" /> 
    <beans:property name="password" 
     value="#{ftpdecrypter.decryptPassword()}" /> 
</beans:bean> 

<beans:bean id="ftpdecrypter" 
    class="com.deere.calibrateddevices.config.FTPPasswordDecryptConfig"> 
</beans:bean> 

<int-sftp:inbound-streaming-channel-adapter 
    id="sftpTurboHoneywellAdapter" channel="turboReceiveChannel" 
    session-factory="sftpSessionFactory" filename-regex="^.*\.(dat|DAT)$" 
    remote-file-separator="/" remote-directory-expression="'${turboXMLFileFtpServerLoc}'" 
    auto-startup="true"> 
    <int:poller fixed-rate="${turboPollarInterval}" 
     max-messages-per-poll="1" /> 
</int-sftp:inbound-streaming-channel-adapter> 

<int:channel id="sftpOutboundChannel" /> 

<int-sftp:outbound-gateway command="rm" 
    reply-channel="nullChannel" session-factory="sftpSessionFactory" 
    request-channel="sftpOutboundChannel" remote-file-separator="/" 
    expression="headers['file_remoteDirectory'] + headers['file_remoteFile']"> 
</int-sftp:outbound-gateway> 

<integration:service-activator id="calibratedDataServiceActivator" 
    input-channel="turboReceiveChannel" ref="turboFtpFileProcessor" 
    method="processTurboCalibratedDeviceFile" /> 

Seine Arbeit gut für einige Zeit, aber es gibt unter Fehler intermittierend.

org.springframework.integration.endpoint.AbstractPollingEndpoint$Poller$1.run(AbstractPollingEndpoint.java:353) 
      at org.springframework.integration.util.ErrorHandlingTaskExecutor$1.run(ErrorHandlingTaskExecutor.java:55) 
      at org.springframework.core.task.SyncTaskExecutor.execute(SyncTaskExecutor.java:50) 
      at org.springframework.integration.util.ErrorHandlingTaskExecutor.execute(ErrorHandlingTaskExecutor.java:51) 
      at org.springframework.integration.endpoint.AbstractPollingEndpoint$Poller.run(AbstractPollingEndpoint.java:344) 
      at org.springframework.scheduling.support.DelegatingErrorHandlingRunnable.run(DelegatingErrorHandlingRunnable.java:54) 
      at org.springframework.scheduling.concurrent.ReschedulingRunnable.run(ReschedulingRunnable.java:81) 
      at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 
      at java.util.concurrent.FutureTask.run(Unknown Source) 
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(Unknown Source) 
      at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(Unknown Source) 
      at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
      at java.lang.Thread.run(Unknown Source) 
    Caused by: java.lang.IllegalStateException: failed to create SFTP Session 
      at org.springframework.integration.sftp.session.DefaultSftpSessionFactory.getSession(DefaultSftpSessionFactory.java:393) 
      at org.springframework.integration.sftp.session.DefaultSftpSessionFactory.getSession(DefaultSftpSessionFactory.java:57) 
      at org.springframework.integration.file.remote.RemoteFileTemplate.execute(RemoteFileTemplate.java:433) 
      ... 24 more 
    Caused by: java.lang.IllegalStateException: failed to connect 
      at org.springframework.integration.sftp.session.SftpSession.connect(SftpSession.java:273) 
      at org.springframework.integration.sftp.session.DefaultSftpSessionFactory.getSession(DefaultSftpSessionFactory.java:388) 
      ... 26 more 
     Caused by: com.jcraft.jsch.JSchException: SSH_MSG_DISCONNECT: 2 Too many authentication failures for *username* 
     at com.jcraft.jsch.Session.read(Session.java:1004) 
     at com.jcraft.jsch.UserAuthPassword.start(UserAuthPassword.java:91) 
     at com.jcraft.jsch.Session.connect(Session.java:470) 
     at com.jcraft.jsch.Session.connect(Session.java:183 

Ich bin nicht sicher, was das verursacht issue.Is es ein Problem mit SFTP SpringIntegration Konfiguration? Habe ich einige andere Eigenschaften auch in DefaultSftpSessionFactory Klasse zur Verfügung stellen müssen? Oder gibt es ein Problem mit SFTP-Server? kann mir jemand helfen, dieses Problem zu lösen.

+0

Überprüfen Sie, ob [dies] (https://bugs.eclipse.org/bugs/show_bug.cgi?id=425672) für Sie funktioniert. –

+0

Nein, ich habe Probleme mit FTPS –

+0

SFTP und FTPS sind völlig unterschiedliche Protokolle. JSCH ist eine SFTP-Bibliothek. Sie verwenden SFTP, nicht FTPS. – Kenster

Antwort

0

Grund für Fehler ist Benutzer-ID wurde auf dem Server blockiert.Nach dem Loslassen Block funktioniert es gut.

Verwandte Themen