1

camel-ftp コンポーネントを使用してファイルをサーバーにアップロードしています。以下の例外がランダムに発生し、ftp が突然停止して問題が発生する可能性があります。任意のポインタに感謝します。私が使用しているラクダのバージョンは 2.10.1 です

|Caused by: org.apache.camel.component.file.GenericFileOperationFailedException: Cannot store file: 8000211d-5f40-4bac-920a-a2e5f2575870.gpg
|   at org.apache.camel.component.file.remote.SftpOperations.doStoreFile(SftpOperations.java:716)
|   at org.apache.camel.component.file.remote.SftpOperations.storeFile(SftpOperations.java:649)
|   at org.apache.camel.component.file.GenericFileProducer.writeFile(GenericFileProducer.java:249)
|   at org.apache.camel.component.file.GenericFileProducer.processExchange(GenericFileProducer.java:151)
|   at org.apache.camel.component.file.remote.RemoteFileProducer.process(RemoteFileProducer.java:49)
|   at org.apache.camel.util.AsyncProcessorConverterHelper$ProcessorToAsyncProcessorBridge.process(AsyncProcessorConverterHelper.java:61)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:120)
|   at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:292)
|   at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:115)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
|   at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
|   at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
|   at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:81)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
|   at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
|   at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
|   at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
|   at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:122)
|   at org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.SendProcessor$2.doInAsyncProducer(SendProcessor.java:120)
|   at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:292)
|   at org.apache.camel.processor.SendProcessor.process(SendProcessor.java:115)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
|   at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
|   at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
|   at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.ChoiceProcessor.process(ChoiceProcessor.java:81)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.interceptor.TraceInterceptor.process(TraceInterceptor.java:91)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.RedeliveryErrorHandler.processErrorHandler(RedeliveryErrorHandler.java:330)
|   at org.apache.camel.processor.RedeliveryErrorHandler.process(RedeliveryErrorHandler.java:220)
|   at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.interceptor.DefaultChannel.process(DefaultChannel.java:303)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.Pipeline.process(Pipeline.java:117)
|   at org.apache.camel.processor.Pipeline.process(Pipeline.java:80)
|   at org.apache.camel.processor.RouteContextProcessor.processNext(RouteContextProcessor.java:45)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:122)
|   at org.apache.camel.processor.RouteInflightRepositoryProcessor.processNext(RouteInflightRepositoryProcessor.java:48)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)
|   at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)
|   at org.apache.camel.component.direct.DirectProducer.process(DirectProducer.java:61)
|   at org.apache.camel.processor.UnitOfWorkProcessor.processAsync(UnitOfWorkProcessor.java:150)
|   at org.apache.camel.processor.UnitOfWorkProcessor.process(UnitOfWorkProcessor.java:117)
|   at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:99)
|   at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:86)
|   at org.apache.camel.processor.UnitOfWorkProducer.process(UnitOfWorkProducer.java:63)
|   at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:360)
|   at org.apache.camel.impl.ProducerCache$2.doInProducer(ProducerCache.java:331)
|   at org.apache.camel.impl.ProducerCache.doInProducer(ProducerCache.java:227)
|   at org.apache.camel.impl.ProducerCache.sendExchange(ProducerCache.java:331)
|   at org.apache.camel.impl.ProducerCache.send(ProducerCache.java:186)
|   at org.apache.camel.impl.DefaultProducerTemplate.send(DefaultProducerTemplate.java:115)
|   at org.apache.camel.impl.DefaultProducerTemplate.sendBody(DefaultProducerTemplate.java:119)
|   ... 59 more
|Caused by: 4: java.io.IOException: Pipe closed
|   at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:500)
|   at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:454)
|   at org.apache.camel.component.file.remote.SftpOperations.doStoreFile(SftpOperations.java:701)
|   ... 180 more
|Caused by: java.io.IOException: Pipe closed
|   at java.io.PipedInputStream.read(PipedInputStream.java:291)
|   at com.jcraft.jsch.Channel$MyPipedInputStream.updateReadSide(Channel.java:344)
|   at com.jcraft.jsch.ChannelSftp.put(ChannelSftp.java:466)
4

1 に答える 1

0

操作が成功したこともありますので、権限の問題ではないかもしれません。ストレージスペースの問題などである可能性があるかどうかはわかりません。

最善の方法は、使用しているバージョンのソース コードを介してデバッグすることです。例外が Java クラスでスローされorg.apache.camel.component.file.remote.FtpOperations、IOException がそこにラップされていることがわかります。

ただし、そうは言っても、グローバルエラーハンドラーも検討することができます。方法を説明する記事は次のとおりです: http://java.dzone.com/articles/camel-exception-handling。何がうまくいかなかったのかを正確に理解するのに役立ちます。

于 2013-02-08T11:06:26.483 に答える