Получите исключение «Нет такого файла» в исходящем шлюзе sftp после обновления версии Spring интеграции с 4.3.12 до 5.2.5 - PullRequest
0 голосов
/ 19 июня 2020

После обновления версии интеграции Spring с 4.3.12 до 5.2.5 новое исключение произошло следующим образом:

org.springframework.messaging.MessageHandlingException: ошибка в обработчике сообщений [bean ' ollSrFeedbackDeliver $ child.ollSrFeedbackOutboundGateway.handler 'для компонента' ollSrFeedbackDeliver $ child.ollSrFeedbackOutboundGateway '; определено в: 'ресурс пути к классу [config / olltms / olltms_srFeedback_context.xml]'; из источника: '' int-sftp: outbound-gateway 'с id =' ollSrFeedbackOutboundGateway '']; вложенное исключение - org.springframework.messaging.MessagingException: не удалось выполнить в сеансе; вложенное исключение - org.springframework.core.NestedIOException: не удалось переименовать из /out/DCS_SR_FEEDBACK/SVR3oBweZKH7sf5Lf1Szlef-20200618211747550.xml в /out/DCS_SR_FEEDBACK/backupBfleSVR501 / DCS_SR_FEEDBACK/backupBf3 / SVR501 / 2BFXXXXXXXXX вложенное исключение - 2: такого файла нет

наша конфигурация выглядит следующим образом:

    <int-sftp:inbound-streaming-channel-adapter id="ollSrFeedbackInboundAdapter"
                                            comparator="sftpFileModifiedTimeComparator"
                                            session-factory="cachingSftpSessionFactory"
                                            channel="ollSrFeedbackInputChannel"
                                            filename-pattern="${filename-pattern}"
                                            remote-file-separator="/"
                                            remote-directory="${sr-feedback-remote-directory}">
        <int:poller fixed-delay="${sftp-in-fixed-delay}"/>
</int-sftp:inbound-streaming-channel-adapter>

использовать исходящий шлюз для перемещения файла в папку резервного копирования:

        <int-sftp:outbound-gateway session-factory="cachingSftpSessionFactory"
                               id="ollSrFeedbackOutboundGateway"
                               command="mv"
                               expression="headers.file_remoteDirectory+'/'+headers.file_remoteFile"
                               rename-expression="headers.file_remoteDirectory+'/backup/'+headers.file_remoteFile"
    />

До обновления все работало нормально, а после обновления возникли проблемы. После проверки журнала jsch найдите:

DEBUG [task-scheduler-2] SftpSession: - File: /out/DCS_SR_FEEDBACK/SVR3oBweZKH7sf5Lf1Szlef-20200618211747550.xml was successfully renamed to /out/DCS_SR_FEEDBACK/backup/SVR3oBweZKH7sf5Lf1Szlef-20200618211747550.xml
DEBUG [task-scheduler-3] SftpSession: - Initial File rename failed, possibly because file already exists. Will attempt to delete file: /out/DCS_SR_FEEDBACK/backup/SVR3oBweZKH7sf5Lf1Szlef-20200618211747550.xml and execute rename again.
DEBUG [task-scheduler-3] SftpSession: - Delete file: /out/DCS_SR_FEEDBACK/backup/SVR3oBweZKH7sf5Lf1Szlef-20200618211747550.xml succeeded. Will attempt rename again

есть ли что-нибудь изменилось после обновления?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...