2014-08-27 2 views
3

мне нужно подключить через SFTP к серверу, и я получаю эту ошибку:Camel SFTP - Невозможно изменить директорию на «/»

INFO [org.apache.camel.component.file.remote.SftpOperations.connect]: **Connected to sftp://myserver.com:22** 
INFO [org.apache.camel.component.file.remote.RemoteFileProducer.connectIfNecessary]: **Connected and logged in to: Endpoint[sftp://myserver.com:22//home/tomcat/directory?password=******] 
INFO [org.apache.camel.component.file.remote.SftpOperations$JSchLogger.log]: JSCH -> **Caught an exception, leaving main loop due to Read timed out** 
INFO [org.apache.camel.component.file.remote.SftpOperations$JSchLogger.log]: JSCH -> **Disconnecting from myserver.com port 22** 
WARN [org.apache.camel.component.file.remote.RemoteFileProducer.handleFailedWrite]: **Writing file failed with: Cannot change directory to: /** 

Я пытался использовать варианты верблюд SFTP maximumReconnectAttempts=10, serverAliveInterval=60 и изменить верблюд версии до 2.12.0, а затем до 2.10.7 (версии, где проблема исправлена), но ни одна из них не исправила мою проблему. Кажется, ошибка, но странно, что не воспроизводится каждый раз Я пытаюсь подключиться к своему серверу.

Я ценю любые предложения.

ответ

1

У вас есть двойная косая черта, например //home/tomcat/directory, которая указывает абсолютный путь.

Может попробовать с, один слэш так ее относительный путь sftp://myserver.com:22/home/tomcat/directory

+0

Ну, мне нужно использовать абсолютный путь, потому что я хочу подключиться к разным машинам. Если бы я использовал относительный путь, я не смог бы подключиться к нужной мне директории. –

+0

убедитесь, что у вас есть разрешение на это –

+0

У меня есть все необходимые разрешения. Иногда я могу связаться с успехом, и исключение не выбрасывается, но иногда я этого не делаю. Может быть, я буду использовать верблюд SCP .. –

3

я решил мою проблему после добавления опции SFTP верблюда disconnect=true.

+0

Работал и для меня. Мне также пришлось поставить опцию 'stepwise = false'. Ошибка была только во втором соединении, которое генерирует ошибку, первое соединение всегда было успешным. Помещение силы 'disconnect = true' для освобождения соединения между двумя последовательными вызовами. –

0

Для меня версия верблюда 2.17.1 исправила проблему. Мои предыдущие версии, у которых была проблема, были 2.15.3 и 2.15.4.

Смежные вопросы