[
https://issues.apache.org/jira/browse/CAMEL-3749?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13003376#comment-13003376
]
Marco Crivellaro commented on CAMEL-3749:
-----------------------------------------
works for me
> sftp producer runs in exception fileName does not contain any path information
> ------------------------------------------------------------------------------
>
> Key: CAMEL-3749
> URL: https://issues.apache.org/jira/browse/CAMEL-3749
> Project: Camel
> Issue Type: Bug
> Components: camel-ftp
> Affects Versions: 2.6.0
> Reporter: Marco Crivellaro
> Assignee: Claus Ibsen
> Fix For: 2.7.0
>
>
> When the fileName uri option does not contain any folder information, ie:
> "fileName=filename.txt" the producer runs in exception
> The exception is thrown when the producer calls ls method of jsch ChannelSftp
> passing an empty string as directory parameter in
> org.apache.camel.component.file.remote.SftpOperations.existsFile line 704
> sample URI:
> sftp://user@hostname:22?disconnect=true&eagerDeleteTargetFile=false%3Bstepwise%3Dfalse&fileName=SYSTEM01&password=******&soTimeout=30000&tempFileName=%24%7Bfile%3Aname.noext%7D.tmp
> Stack trace:
> {code}
> [2011-03-03 14:40:40,827][RecipientList (thread
> #4)][ERROR][org.apache.camel.processor.DefaultErrorHandler][] Failed delivery
> for exchangeId: ID-******-33331-1299163043684-0-10. Exhausted after delivery
> attempt: 1 caught:
> org.apache.camel.component.file.GenericFileOperationFailedExcept on:
> org.apache.camel.component.file.GenericFileOperationFailedException:
> at
> org.apache.camel.component.file.remote.SftpOperations.existsFile(SftpOperations.java:727)
>
> at
> org.apache.camel.component.file.GenericFileProducer.processExchange(GenericFileProducer.java:130)
>
> at
> org.apache.camel.component.file.remote.RemoteFileProducer.process(RemoteFileProducer.java:50)
>
> at
> org.apache.camel.impl.converter.AsyncProcessorTypeConverter$ProcessorToAsyncProcessorBridge.process(AsyncProcessorTypeConverter.java:50)
>
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:77)
>
> at
> org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:299)
>
> at
> org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:208)
>
> at
> org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:109)
>
> at
> org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:103)
>
> at
> org.apache.camel.processor.MulticastProcessor.doProcessParallel(MulticastProcessor.java:716)
>
> at
> org.apache.camel.processor.MulticastProcessor.access$100(MulticastProcessor.java:78)
>
> at
> org.apache.camel.processor.MulticastProcessor$1.call(MulticastProcessor.java:282)
>
> at
> org.apache.camel.processor.MulticastProcessor$1.call(MulticastProcessor.java:274)
>
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
>
> at
> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
>
> at java.lang.Thread.run(Thread.java:619)
> Caused by: 4:
> at com.jcraft.jsch.ChannelSftp.ls(ChannelSftp.java:1353)
> at
> org.apache.camel.component.file.remote.SftpOperations.existsFile(SftpOperations.java:704)
>
> ... 20 more
> Caused by: java.lang.StringIndexOutOfBoundsException: String index out of
> range: 0
> at java.lang.String.charAt(String.java:686)
> at
> com.jcraft.jsch.ChannelSftp.remoteAbsolutePath(ChannelSftp.java:2367)
> at com.jcraft.jsch.ChannelSftp.ls(ChannelSftp.java:1185)
> ... 21 more
> {code}
--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira