Details
-
Bug
-
Status: Resolved
-
Blocker
-
Resolution: Fixed
-
None
-
None
Description
When try to pull larger file from an ftp location , i face the following issue[1]..I used following proxy configuration[2]
The issue is here, vfs transport listener closes the stream before the vfs transport sender reads it.. As a workaround, i added a Stringbuffer @ listener with a limited buffer size to read the soap envelope..
Attached the patch with this workaround..
Please review and commit
[1]
r the specified or optional timeout
[2012-02-29 15:39:19,321] ERROR - VFSTransportListener Error closing stream
org.apache.commons.vfs2.FileSystemException: Could not close the input stream for file "ftp://anonymous@localhost/in/textfile.txt?vfs.passive=true".
at org.apache.commons.vfs2.provider.DefaultFileContent$FileContentInputStream.close(DefaultFileContent.java:612)
at org.apache.synapse.transport.vfs.VFSTransportListener.processFile(VFSTransportListener.java:566)
at org.apache.synapse.transport.vfs.VFSTransportListener.scanFileOrDirectory(VFSTransportListener.java:306)
at org.apache.synapse.transport.vfs.VFSTransportListener.poll(VFSTransportListener.java:157)
at org.apache.synapse.transport.vfs.VFSTransportListener.poll(VFSTransportListener.java:106)
at org.apache.axis2.transport.base.AbstractPollingTransportListener$1$1.run(AbstractPollingTransportListener.java:67)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:173)
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: org.apache.commons.vfs2.FileSystemException: Could not get FTP file "ftp://anonymous@localhost/in/textfile.txt?vfs.passive=true".
at org.apache.commons.vfs2.provider.ftp.FtpFileObject$FtpInputStream.onClose(FtpFileObject.java:731)
at org.apache.commons.vfs2.util.MonitorInputStream.close(MonitorInputStream.java:140)
at java.io.BufferedInputStream.close(BufferedInputStream.java:451)
at org.apache.commons.vfs2.util.MonitorInputStream.close(MonitorInputStream.java:130)
at org.apache.commons.vfs2.provider.DefaultFileContent$FileContentInputStream.close(DefaultFileContent.java:608)
... 9 more
[2012-02-29 15:39:19,324] ERROR - VFSTransportListener Error processing File URI : ftp://anonymous@localhost/in/textfile.txt?vfs.passive=true
org.apache.axis2.AxisFault: Error closing stream
at org.apache.axis2.transport.base.AbstractTransportListener.handleException(AbstractTransportListener.java:343)
at org.apache.synapse.transport.vfs.VFSTransportListener.processFile(VFSTransportListener.java:568)
at org.apache.synapse.transport.vfs.VFSTransportListener.scanFileOrDirectory(VFSTransportListener.java:306)
at org.apache.synapse.transport.vfs.VFSTransportListener.poll(VFSTransportListener.java:157)
at org.apache.synapse.transport.vfs.VFSTransportListener.poll(VFSTransportListener.java:106)
at org.apache.axis2.transport.base.AbstractPollingTransportListener$1$1.run(AbstractPollingTransportListener.java:67)
at org.apache.axis2.transport.base.threads.NativeWorkerPool$1.run(NativeWorkerPool.java:173)
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: org.apache.commons.vfs2.FileSystemException: Could not close the input stream for file "ftp://anonymous@localhost/in/textfile.txt?vfs.passi
ve=true".
at org.apache.commons.vfs2.provider.DefaultFileContent$FileContentInputStream.close(DefaultFileContent.java:612)
at org.apache.synapse.transport.vfs.VFSTransportListener.processFile(VFSTransportListener.java:566)
... 8 more
Caused by: org.apache.commons.vfs2.FileSystemException: Could not get FTP file "ftp://anonymous@localhost/in/textfile.txt?vfs.passive=true".
at org.apache.commons.vfs2.provider.ftp.FtpFileObject$FtpInputStream.onClose(FtpFileObject.java:731)