You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@commons.apache.org by Cyril Bouteille <cy...@peerflix.com> on 2007/01/02 20:16:06 UTC

Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Thanks for your reply Mark.
This exception occurs on a simple 'ls' (listFiles()) in a directory with 
less than 100 files. This command returns within a couple seconds @ ftp 
cli. But the commons.net program can hang for hours and then exit with 
this "connection reset" exception.
We do use the same FTP server in dev and prod. It's one from the USPS. 
Only the client network and machine the commons.net program runs on is 
different.
It feels like a network connectivity issue, but I don't understand how 
the ftp cli and commons.net library behave differently in a way 
explaining this...
Any idea?

Mark Fortner wrote:
> Sounds like your production environment has different FTP socket 
> timeout settings.  Does this exception occur with a large file in your 
> production environment?  If so, is that same file available in your 
> dev environment?
>
> You may want to compare the settings on FTP servers and make sure 
> they're the same.
>
> Hope this helps,
>
> Mark
>
> PS Don't forget to prefix the subject lines of your email with "[VFS]" 
> as this list is shared by a lot of different groups.
>
> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>
>> Hello,
>> I've a Java 1.5 program retrieving files over ftp using net 1.4.1, 
>> which works fine in our dev environment, but throws the exception 
>> below in our production environment on the listFiles() call.
>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>> 2) I'm able to list files with the ftp cli client on the same 
>> production machine that the Java program is running on, so network 
>> ACLs seem ok
>> Is there anything else I am missing?
>> I'm at loss on how to resolve this issue and would appreciate your 
>> input.
>> Thanks,
>>
>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>> java.net.SocketException: Connection reset
>> java.net.SocketException: Connection reset
>>     at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>     at 
>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>     at 
>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>     at 
>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>
>>     at 
>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>
>>     at 
>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>
>>     at 
>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>
>>     at 
>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>
>>     at 
>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141)
>>     at 
>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188)
>>     at 
>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Posted by Rory Winston <rw...@eircom.net>.
Cyril

In order to definitively identify the problem, what I would do is start 
a debugging session in your IDE using your FTP client program. Set a 
breakpoint at an appropriate point in the code (before or on the call to 
listFiles() for instance) and make sure the commons-net source code is 
in your IDE's source path so you can step into it. If you use Eclipse, I 
can give you some guidance on how to do this if you havent done it 
before, not familiar with IntelliJ, unfortunately.

Cheers
Rory

Cyril Bouteille wrote:
> Hi Rory,
> Yes, I used net 2.0 you gave me a link for last time with the 
> examples.PrintCommandListener from 1.4.1 release + it's running on 
> java 1.5.0_11.
> Let me know you would suggest to proceed in debugging what's happening.
> Thank you,
>
> Rory Winston wrote:
>> Hi Cyril
>>
>> Thanks for this - is this with commons-net version 1.4 or the 2.0 
>> prerelease? If it is 1.4, can you try it with the 2.0 prerelease and 
>> see if the error still occurs?
>>
>> The prerelease is here:
>>
>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-ftp-2.0.0-SNAPSHOT.jar 
>>
>>
>> You will need Java 5 or later.
>>
>> Thanks
>> Rory
>>
>> Cyril Bouteille wrote:
>>> Hi Rory,
>>> Please find below the output of the listener. Let me know what you 
>>> think!
>>>
>>> 220 envmgr2 Microsoft FTP Service (Version 5.0).
>>> USER FTP_USPS_CONFIRM
>>> 331 Password required for FTP_USPS_CONFIRM.
>>> PASS ***
>>> 230-Welcome to Envelope Manager FTP
>>> 230 User FTP_USPS_CONFIRM logged in.
>>> INFO 10:53:44 MailScanJob.runJob: Connected to ftp.envmgr.com as 
>>> FTP_USPS_CONFIRM -- 230-Welcome to Envelope Manager FTP
>>> 230 User FTP_USPS_CONFIRM logged in.
>>> CWD /confirm
>>> 250 CWD command successful.
>>> PWD
>>> 257 "/confirm" is current directory.
>>> INFO 10:53:44 MailScanJob.runJob: MailScan Folder: /confirm
>>> TYPE A
>>> 200 Type set to A.
>>> INFO 10:53:46 MailScanJob.processMailScans: Retrieving list of files 
>>> in directory...
>>> SYST
>>> 215 Windows_NT version 5.0
>>> PASV
>>> 227 Entering Passive Mode (65,203,54,10,5,104).
>>> LIST
>>> 125 Data connection already open; Transfer starting.
>>>
>>> hangs there for a while... and then blows up with SocketException: 
>>> connection reset.
>>>
>>> Rory Winston wrote:
>>>> Hi Cyril
>>>>
>>>> Can you try again with 2.0, but this time can you attach a 
>>>> PrintCommandListener to the FTPClient instance? You can see how to 
>>>> do this here:
>>>>
>>>> FTPClient client = new FTPClient();
>>>> client.addProtocolCommandListener(new PrintCommandListener(new 
>>>> PrintWriter(System.out)));
>>>>
>>>>
>>>> This will log all FTP traffic to stdout. When you have done this, 
>>>> can you send the relevant output?
>>>>
>>>> A more comprehensive way to try and locate the problem is to 
>>>> download the source distribution as well:
>>>>
>>>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT-src.zip 
>>>>
>>>>
>>>> And then run your test program from within your IDE, after 
>>>> attaching a breakpoint at the relevant location.
>>>> Is the FTP server in question publicly accessible?
>>>>
>>>> Thanks
>>>> Rory
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Cyril Bouteille wrote:
>>>>> Hi Rory,
>>>>> I just tried your 2.0 snapshot and I'm getting the exact same 
>>>>> issue (see log below).
>>>>> I'm assuming I'm using the new jar correctly as the line #s in the 
>>>>> stack trace have changed, but please let me know if it's not the 
>>>>> case.
>>>>> Any other idea? Is there any way to turn on debug logging for this 
>>>>> lib?
>>>>> Thank you,
>>>>>
>>>>> INFO 08:58:06 MailScanJob.runJob: Connected to ftp.envmgr.com as 
>>>>> xxx --
>>>>> 220 envmgr2 Microsoft FTP Service (Version 5.0).
>>>>> 331 Password required for xxx
>>>>> 230-Welcome to Envelope Manager FTP
>>>>> 230 User xxx logged in.
>>>>> INFO 08:58:06 MailScanJob.runJob: MailScan Folder: /confirm
>>>>> INFO 08:58:08 MailScanJob.processMailScans: Retrieving list of 
>>>>> files in directory...
>>>>> SEVERE 09:01:20 MailScanJob.runJob: MailScanJob.runJob: Exception 
>>>>> java.net.SocketException: Connection reset
>>>>> java.net.SocketException: Connection reset
>>>>>        at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>>        at 
>>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>>>>        at 
>>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>>>        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>>        at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>>        at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>>        at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>>        at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:53) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:152) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:100) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2314) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2281) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2058)
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2105)
>>>>>        at 
>>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>>>>        at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>>        at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>>
>>>>>
>>>>> Rory Winston wrote:
>>>>>> Hi Cyril
>>>>>>
>>>>>> If you are running Java 1.5 or later, you can try the latest 
>>>>>> snapshot of commons-net 2.0 and see if that fixes the issue:
>>>>>>
>>>>>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT.jar 
>>>>>>
>>>>>>
>>>>>> Rory
>>>>>>
>>>>>> Cyril Bouteille wrote:
>>>>>>> Thanks for your reply Mark.
>>>>>>> This exception occurs on a simple 'ls' (listFiles()) in a 
>>>>>>> directory with less than 100 files. This command returns within 
>>>>>>> a couple seconds @ ftp cli. But the commons.net program can hang 
>>>>>>> for hours and then exit with this "connection reset" exception.
>>>>>>> We do use the same FTP server in dev and prod. It's one from the 
>>>>>>> USPS. Only the client network and machine the commons.net 
>>>>>>> program runs on is different.
>>>>>>> It feels like a network connectivity issue, but I don't 
>>>>>>> understand how the ftp cli and commons.net library behave 
>>>>>>> differently in a way explaining this...
>>>>>>> Any idea?
>>>>>>>
>>>>>>> Mark Fortner wrote:
>>>>>>>> Sounds like your production environment has different FTP 
>>>>>>>> socket timeout settings.  Does this exception occur with a 
>>>>>>>> large file in your production environment?  If so, is that same 
>>>>>>>> file available in your dev environment?
>>>>>>>>
>>>>>>>> You may want to compare the settings on FTP servers and make 
>>>>>>>> sure they're the same.
>>>>>>>>
>>>>>>>> Hope this helps,
>>>>>>>>
>>>>>>>> Mark
>>>>>>>>
>>>>>>>> PS Don't forget to prefix the subject lines of your email with 
>>>>>>>> "[VFS]" as this list is shared by a lot of different groups.
>>>>>>>>
>>>>>>>> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>>>>>>>>
>>>>>>>>> Hello,
>>>>>>>>> I've a Java 1.5 program retrieving files over ftp using net 
>>>>>>>>> 1.4.1, which works fine in our dev environment, but throws the 
>>>>>>>>> exception below in our production environment on the 
>>>>>>>>> listFiles() call.
>>>>>>>>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>>>>>>>>> 2) I'm able to list files with the ftp cli client on the same 
>>>>>>>>> production machine that the Java program is running on, so 
>>>>>>>>> network ACLs seem ok
>>>>>>>>> Is there anything else I am missing?
>>>>>>>>> I'm at loss on how to resolve this issue and would appreciate 
>>>>>>>>> your input.
>>>>>>>>> Thanks,
>>>>>>>>>
>>>>>>>>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>>>>>>>>> java.net.SocketException: Connection reset
>>>>>>>>> java.net.SocketException: Connection reset
>>>>>>>>>     at 
>>>>>>>>> java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>>>>>>     at 
>>>>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453) 
>>>>>>>>>
>>>>>>>>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>>>>>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>>>>>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136) 
>>>>>>>>>
>>>>>>>>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>>>>>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>>>>>>
>>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: commons-user-help@jakarta.apache.org
>
>
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Posted by Cyril Bouteille <cy...@peerflix.com>.
For future victims' benefit: I was able to resolve this issue by _NOT_ 
calling FTPClient.*enterLocalPassiveMode*() in my Java program.
It makes totally no sense to me since my understanding is that active 
mode requires more ports open through firewalls than passive mode, which 
is generally recommended in colocation environments... but for whatever 
reason, it works now!
I'd be interested to hear any theory on why I can't work with ftp in 
passive mode but I can in active mode...

Cyril Bouteille wrote:
> Hi Rory,
> Yes, I used net 2.0 you gave me a link for last time with the 
> examples.PrintCommandListener from 1.4.1 release + it's running on 
> java 1.5.0_11.
> Let me know you would suggest to proceed in debugging what's happening.
> Thank you,
>
> Rory Winston wrote:
>> Hi Cyril
>>
>> Thanks for this - is this with commons-net version 1.4 or the 2.0 
>> prerelease? If it is 1.4, can you try it with the 2.0 prerelease and 
>> see if the error still occurs?
>>
>> The prerelease is here:
>>
>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-ftp-2.0.0-SNAPSHOT.jar 
>>
>>
>> You will need Java 5 or later.
>>
>> Thanks
>> Rory
>>
>> Cyril Bouteille wrote:
>>> Hi Rory,
>>> Please find below the output of the listener. Let me know what you 
>>> think!
>>>
>>> 220 envmgr2 Microsoft FTP Service (Version 5.0).
>>> USER FTP_USPS_CONFIRM
>>> 331 Password required for FTP_USPS_CONFIRM.
>>> PASS ***
>>> 230-Welcome to Envelope Manager FTP
>>> 230 User FTP_USPS_CONFIRM logged in.
>>> INFO 10:53:44 MailScanJob.runJob: Connected to ftp.envmgr.com as 
>>> FTP_USPS_CONFIRM -- 230-Welcome to Envelope Manager FTP
>>> 230 User FTP_USPS_CONFIRM logged in.
>>> CWD /confirm
>>> 250 CWD command successful.
>>> PWD
>>> 257 "/confirm" is current directory.
>>> INFO 10:53:44 MailScanJob.runJob: MailScan Folder: /confirm
>>> TYPE A
>>> 200 Type set to A.
>>> INFO 10:53:46 MailScanJob.processMailScans: Retrieving list of files 
>>> in directory...
>>> SYST
>>> 215 Windows_NT version 5.0
>>> PASV
>>> 227 Entering Passive Mode (65,203,54,10,5,104).
>>> LIST
>>> 125 Data connection already open; Transfer starting.
>>>
>>> hangs there for a while... and then blows up with SocketException: 
>>> connection reset.
>>>
>>> Rory Winston wrote:
>>>> Hi Cyril
>>>>
>>>> Can you try again with 2.0, but this time can you attach a 
>>>> PrintCommandListener to the FTPClient instance? You can see how to 
>>>> do this here:
>>>>
>>>> FTPClient client = new FTPClient();
>>>> client.addProtocolCommandListener(new PrintCommandListener(new 
>>>> PrintWriter(System.out)));
>>>>
>>>>
>>>> This will log all FTP traffic to stdout. When you have done this, 
>>>> can you send the relevant output?
>>>>
>>>> A more comprehensive way to try and locate the problem is to 
>>>> download the source distribution as well:
>>>>
>>>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT-src.zip 
>>>>
>>>>
>>>> And then run your test program from within your IDE, after 
>>>> attaching a breakpoint at the relevant location.
>>>> Is the FTP server in question publicly accessible?
>>>>
>>>> Thanks
>>>> Rory
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> Cyril Bouteille wrote:
>>>>> Hi Rory,
>>>>> I just tried your 2.0 snapshot and I'm getting the exact same 
>>>>> issue (see log below).
>>>>> I'm assuming I'm using the new jar correctly as the line #s in the 
>>>>> stack trace have changed, but please let me know if it's not the 
>>>>> case.
>>>>> Any other idea? Is there any way to turn on debug logging for this 
>>>>> lib?
>>>>> Thank you,
>>>>>
>>>>> INFO 08:58:06 MailScanJob.runJob: Connected to ftp.envmgr.com as 
>>>>> xxx --
>>>>> 220 envmgr2 Microsoft FTP Service (Version 5.0).
>>>>> 331 Password required for xxx
>>>>> 230-Welcome to Envelope Manager FTP
>>>>> 230 User xxx logged in.
>>>>> INFO 08:58:06 MailScanJob.runJob: MailScan Folder: /confirm
>>>>> INFO 08:58:08 MailScanJob.processMailScans: Retrieving list of 
>>>>> files in directory...
>>>>> SEVERE 09:01:20 MailScanJob.runJob: MailScanJob.runJob: Exception 
>>>>> java.net.SocketException: Connection reset
>>>>> java.net.SocketException: Connection reset
>>>>>        at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>>        at 
>>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>>>>        at 
>>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>>>        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>>        at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>>        at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>>        at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>>        at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:53) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:152) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:100) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2314) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2281) 
>>>>>
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2058)
>>>>>        at 
>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2105)
>>>>>        at 
>>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>>>>        at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>>        at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>>
>>>>>
>>>>> Rory Winston wrote:
>>>>>> Hi Cyril
>>>>>>
>>>>>> If you are running Java 1.5 or later, you can try the latest 
>>>>>> snapshot of commons-net 2.0 and see if that fixes the issue:
>>>>>>
>>>>>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT.jar 
>>>>>>
>>>>>>
>>>>>> Rory
>>>>>>
>>>>>> Cyril Bouteille wrote:
>>>>>>> Thanks for your reply Mark.
>>>>>>> This exception occurs on a simple 'ls' (listFiles()) in a 
>>>>>>> directory with less than 100 files. This command returns within 
>>>>>>> a couple seconds @ ftp cli. But the commons.net program can hang 
>>>>>>> for hours and then exit with this "connection reset" exception.
>>>>>>> We do use the same FTP server in dev and prod. It's one from the 
>>>>>>> USPS. Only the client network and machine the commons.net 
>>>>>>> program runs on is different.
>>>>>>> It feels like a network connectivity issue, but I don't 
>>>>>>> understand how the ftp cli and commons.net library behave 
>>>>>>> differently in a way explaining this...
>>>>>>> Any idea?
>>>>>>>
>>>>>>> Mark Fortner wrote:
>>>>>>>> Sounds like your production environment has different FTP 
>>>>>>>> socket timeout settings.  Does this exception occur with a 
>>>>>>>> large file in your production environment?  If so, is that same 
>>>>>>>> file available in your dev environment?
>>>>>>>>
>>>>>>>> You may want to compare the settings on FTP servers and make 
>>>>>>>> sure they're the same.
>>>>>>>>
>>>>>>>> Hope this helps,
>>>>>>>>
>>>>>>>> Mark
>>>>>>>>
>>>>>>>> PS Don't forget to prefix the subject lines of your email with 
>>>>>>>> "[VFS]" as this list is shared by a lot of different groups.
>>>>>>>>
>>>>>>>> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>>>>>>>>
>>>>>>>>> Hello,
>>>>>>>>> I've a Java 1.5 program retrieving files over ftp using net 
>>>>>>>>> 1.4.1, which works fine in our dev environment, but throws the 
>>>>>>>>> exception below in our production environment on the 
>>>>>>>>> listFiles() call.
>>>>>>>>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>>>>>>>>> 2) I'm able to list files with the ftp cli client on the same 
>>>>>>>>> production machine that the Java program is running on, so 
>>>>>>>>> network ACLs seem ok
>>>>>>>>> Is there anything else I am missing?
>>>>>>>>> I'm at loss on how to resolve this issue and would appreciate 
>>>>>>>>> your input.
>>>>>>>>> Thanks,
>>>>>>>>>
>>>>>>>>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>>>>>>>>> java.net.SocketException: Connection reset
>>>>>>>>> java.net.SocketException: Connection reset
>>>>>>>>>     at 
>>>>>>>>> java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>>>>>>     at 
>>>>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453) 
>>>>>>>>>
>>>>>>>>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>>>>>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>>>>>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188) 
>>>>>>>>>
>>>>>>>>>     at 
>>>>>>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136) 
>>>>>>>>>
>>>>>>>>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>>>>>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>>>>>>
>>>


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Posted by Cyril Bouteille <cy...@peerflix.com>.
Hi Rory,
Yes, I used net 2.0 you gave me a link for last time with the 
examples.PrintCommandListener from 1.4.1 release + it's running on java 
1.5.0_11.
Let me know you would suggest to proceed in debugging what's happening.
Thank you,

Rory Winston wrote:
> Hi Cyril
>
> Thanks for this - is this with commons-net version 1.4 or the 2.0 
> prerelease? If it is 1.4, can you try it with the 2.0 prerelease and 
> see if the error still occurs?
>
> The prerelease is here:
>
> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-ftp-2.0.0-SNAPSHOT.jar 
>
>
> You will need Java 5 or later.
>
> Thanks
> Rory
>
> Cyril Bouteille wrote:
>> Hi Rory,
>> Please find below the output of the listener. Let me know what you 
>> think!
>>
>> 220 envmgr2 Microsoft FTP Service (Version 5.0).
>> USER FTP_USPS_CONFIRM
>> 331 Password required for FTP_USPS_CONFIRM.
>> PASS ***
>> 230-Welcome to Envelope Manager FTP
>> 230 User FTP_USPS_CONFIRM logged in.
>> INFO 10:53:44 MailScanJob.runJob: Connected to ftp.envmgr.com as 
>> FTP_USPS_CONFIRM -- 230-Welcome to Envelope Manager FTP
>> 230 User FTP_USPS_CONFIRM logged in.
>> CWD /confirm
>> 250 CWD command successful.
>> PWD
>> 257 "/confirm" is current directory.
>> INFO 10:53:44 MailScanJob.runJob: MailScan Folder: /confirm
>> TYPE A
>> 200 Type set to A.
>> INFO 10:53:46 MailScanJob.processMailScans: Retrieving list of files 
>> in directory...
>> SYST
>> 215 Windows_NT version 5.0
>> PASV
>> 227 Entering Passive Mode (65,203,54,10,5,104).
>> LIST
>> 125 Data connection already open; Transfer starting.
>>
>> hangs there for a while... and then blows up with SocketException: 
>> connection reset.
>>
>> Rory Winston wrote:
>>> Hi Cyril
>>>
>>> Can you try again with 2.0, but this time can you attach a 
>>> PrintCommandListener to the FTPClient instance? You can see how to 
>>> do this here:
>>>
>>> FTPClient client = new FTPClient();
>>> client.addProtocolCommandListener(new PrintCommandListener(new 
>>> PrintWriter(System.out)));
>>>
>>>
>>> This will log all FTP traffic to stdout. When you have done this, 
>>> can you send the relevant output?
>>>
>>> A more comprehensive way to try and locate the problem is to 
>>> download the source distribution as well:
>>>
>>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT-src.zip 
>>>
>>>
>>> And then run your test program from within your IDE, after attaching 
>>> a breakpoint at the relevant location.
>>> Is the FTP server in question publicly accessible?
>>>
>>> Thanks
>>> Rory
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>> Cyril Bouteille wrote:
>>>> Hi Rory,
>>>> I just tried your 2.0 snapshot and I'm getting the exact same issue 
>>>> (see log below).
>>>> I'm assuming I'm using the new jar correctly as the line #s in the 
>>>> stack trace have changed, but please let me know if it's not the case.
>>>> Any other idea? Is there any way to turn on debug logging for this 
>>>> lib?
>>>> Thank you,
>>>>
>>>> INFO 08:58:06 MailScanJob.runJob: Connected to ftp.envmgr.com as 
>>>> xxx --
>>>> 220 envmgr2 Microsoft FTP Service (Version 5.0).
>>>> 331 Password required for xxx
>>>> 230-Welcome to Envelope Manager FTP
>>>> 230 User xxx logged in.
>>>> INFO 08:58:06 MailScanJob.runJob: MailScan Folder: /confirm
>>>> INFO 08:58:08 MailScanJob.processMailScans: Retrieving list of 
>>>> files in directory...
>>>> SEVERE 09:01:20 MailScanJob.runJob: MailScanJob.runJob: Exception 
>>>> java.net.SocketException: Connection reset
>>>> java.net.SocketException: Connection reset
>>>>        at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>        at 
>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>>>        at 
>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>>        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>        at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>        at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>        at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>        at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>        at 
>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:53) 
>>>>
>>>>        at 
>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:152) 
>>>>
>>>>        at 
>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:100) 
>>>>
>>>>        at 
>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2314) 
>>>>
>>>>        at 
>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2281) 
>>>>
>>>>        at 
>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2058)
>>>>        at 
>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2105)
>>>>        at 
>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>>>        at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>        at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>
>>>>
>>>> Rory Winston wrote:
>>>>> Hi Cyril
>>>>>
>>>>> If you are running Java 1.5 or later, you can try the latest 
>>>>> snapshot of commons-net 2.0 and see if that fixes the issue:
>>>>>
>>>>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT.jar 
>>>>>
>>>>>
>>>>> Rory
>>>>>
>>>>> Cyril Bouteille wrote:
>>>>>> Thanks for your reply Mark.
>>>>>> This exception occurs on a simple 'ls' (listFiles()) in a 
>>>>>> directory with less than 100 files. This command returns within a 
>>>>>> couple seconds @ ftp cli. But the commons.net program can hang 
>>>>>> for hours and then exit with this "connection reset" exception.
>>>>>> We do use the same FTP server in dev and prod. It's one from the 
>>>>>> USPS. Only the client network and machine the commons.net program 
>>>>>> runs on is different.
>>>>>> It feels like a network connectivity issue, but I don't 
>>>>>> understand how the ftp cli and commons.net library behave 
>>>>>> differently in a way explaining this...
>>>>>> Any idea?
>>>>>>
>>>>>> Mark Fortner wrote:
>>>>>>> Sounds like your production environment has different FTP socket 
>>>>>>> timeout settings.  Does this exception occur with a large file 
>>>>>>> in your production environment?  If so, is that same file 
>>>>>>> available in your dev environment?
>>>>>>>
>>>>>>> You may want to compare the settings on FTP servers and make 
>>>>>>> sure they're the same.
>>>>>>>
>>>>>>> Hope this helps,
>>>>>>>
>>>>>>> Mark
>>>>>>>
>>>>>>> PS Don't forget to prefix the subject lines of your email with 
>>>>>>> "[VFS]" as this list is shared by a lot of different groups.
>>>>>>>
>>>>>>> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>>>>>>>
>>>>>>>> Hello,
>>>>>>>> I've a Java 1.5 program retrieving files over ftp using net 
>>>>>>>> 1.4.1, which works fine in our dev environment, but throws the 
>>>>>>>> exception below in our production environment on the 
>>>>>>>> listFiles() call.
>>>>>>>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>>>>>>>> 2) I'm able to list files with the ftp cli client on the same 
>>>>>>>> production machine that the Java program is running on, so 
>>>>>>>> network ACLs seem ok
>>>>>>>> Is there anything else I am missing?
>>>>>>>> I'm at loss on how to resolve this issue and would appreciate 
>>>>>>>> your input.
>>>>>>>> Thanks,
>>>>>>>>
>>>>>>>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>>>>>>>> java.net.SocketException: Connection reset
>>>>>>>> java.net.SocketException: Connection reset
>>>>>>>>     at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>>>>>     at 
>>>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411) 
>>>>>>>>
>>>>>>>>     at 
>>>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453) 
>>>>>>>>
>>>>>>>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>>>>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>>>>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>>>>>     at 
>>>>>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>>>>>>>
>>>>>>>>     at 
>>>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>>>>>>>
>>>>>>>>     at 
>>>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>>>>>>>
>>>>>>>>     at 
>>>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>>>>>>>
>>>>>>>>     at 
>>>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>>>>>>>
>>>>>>>>     at 
>>>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141) 
>>>>>>>>
>>>>>>>>     at 
>>>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188) 
>>>>>>>>
>>>>>>>>     at 
>>>>>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136) 
>>>>>>>>
>>>>>>>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>>>>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>>>>>
>>


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Posted by Rory Winston <rw...@eircom.net>.
Hi Cyril

Thanks for this - is this with commons-net version 1.4 or the 2.0 
prerelease? If it is 1.4, can you try it with the 2.0 prerelease and see 
if the error still occurs?

The prerelease is here:

http://people.apache.org/~rwinston/commons-net-2.0/commons-net-ftp-2.0.0-SNAPSHOT.jar

You will need Java 5 or later.

Thanks
Rory

Cyril Bouteille wrote:
> Hi Rory,
> Please find below the output of the listener. Let me know what you think!
>
> 220 envmgr2 Microsoft FTP Service (Version 5.0).
> USER FTP_USPS_CONFIRM
> 331 Password required for FTP_USPS_CONFIRM.
> PASS ***
> 230-Welcome to Envelope Manager FTP
> 230 User FTP_USPS_CONFIRM logged in.
> INFO 10:53:44 MailScanJob.runJob: Connected to ftp.envmgr.com as 
> FTP_USPS_CONFIRM -- 230-Welcome to Envelope Manager FTP
> 230 User FTP_USPS_CONFIRM logged in.
> CWD /confirm
> 250 CWD command successful.
> PWD
> 257 "/confirm" is current directory.
> INFO 10:53:44 MailScanJob.runJob: MailScan Folder: /confirm
> TYPE A
> 200 Type set to A.
> INFO 10:53:46 MailScanJob.processMailScans: Retrieving list of files 
> in directory...
> SYST
> 215 Windows_NT version 5.0
> PASV
> 227 Entering Passive Mode (65,203,54,10,5,104).
> LIST
> 125 Data connection already open; Transfer starting.
>
> hangs there for a while... and then blows up with SocketException: 
> connection reset.
>
> Rory Winston wrote:
>> Hi Cyril
>>
>> Can you try again with 2.0, but this time can you attach a 
>> PrintCommandListener to the FTPClient instance? You can see how to do 
>> this here:
>>
>> FTPClient client = new FTPClient();
>> client.addProtocolCommandListener(new PrintCommandListener(new 
>> PrintWriter(System.out)));
>>
>>
>> This will log all FTP traffic to stdout. When you have done this, can 
>> you send the relevant output?
>>
>> A more comprehensive way to try and locate the problem is to download 
>> the source distribution as well:
>>
>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT-src.zip 
>>
>>
>> And then run your test program from within your IDE, after attaching 
>> a breakpoint at the relevant location.
>> Is the FTP server in question publicly accessible?
>>
>> Thanks
>> Rory
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> Cyril Bouteille wrote:
>>> Hi Rory,
>>> I just tried your 2.0 snapshot and I'm getting the exact same issue 
>>> (see log below).
>>> I'm assuming I'm using the new jar correctly as the line #s in the 
>>> stack trace have changed, but please let me know if it's not the case.
>>> Any other idea? Is there any way to turn on debug logging for this lib?
>>> Thank you,
>>>
>>> INFO 08:58:06 MailScanJob.runJob: Connected to ftp.envmgr.com as xxx --
>>> 220 envmgr2 Microsoft FTP Service (Version 5.0).
>>> 331 Password required for xxx
>>> 230-Welcome to Envelope Manager FTP
>>> 230 User xxx logged in.
>>> INFO 08:58:06 MailScanJob.runJob: MailScan Folder: /confirm
>>> INFO 08:58:08 MailScanJob.processMailScans: Retrieving list of files 
>>> in directory...
>>> SEVERE 09:01:20 MailScanJob.runJob: MailScanJob.runJob: Exception 
>>> java.net.SocketException: Connection reset
>>> java.net.SocketException: Connection reset
>>>        at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>        at 
>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>>        at 
>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>        at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>        at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>        at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>        at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>        at 
>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:53) 
>>>
>>>        at 
>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:152) 
>>>
>>>        at 
>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:100) 
>>>
>>>        at 
>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2314) 
>>>
>>>        at 
>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2281) 
>>>
>>>        at 
>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2058)
>>>        at 
>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2105)
>>>        at 
>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>>        at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>        at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>
>>>
>>> Rory Winston wrote:
>>>> Hi Cyril
>>>>
>>>> If you are running Java 1.5 or later, you can try the latest 
>>>> snapshot of commons-net 2.0 and see if that fixes the issue:
>>>>
>>>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT.jar 
>>>>
>>>>
>>>> Rory
>>>>
>>>> Cyril Bouteille wrote:
>>>>> Thanks for your reply Mark.
>>>>> This exception occurs on a simple 'ls' (listFiles()) in a 
>>>>> directory with less than 100 files. This command returns within a 
>>>>> couple seconds @ ftp cli. But the commons.net program can hang for 
>>>>> hours and then exit with this "connection reset" exception.
>>>>> We do use the same FTP server in dev and prod. It's one from the 
>>>>> USPS. Only the client network and machine the commons.net program 
>>>>> runs on is different.
>>>>> It feels like a network connectivity issue, but I don't understand 
>>>>> how the ftp cli and commons.net library behave differently in a 
>>>>> way explaining this...
>>>>> Any idea?
>>>>>
>>>>> Mark Fortner wrote:
>>>>>> Sounds like your production environment has different FTP socket 
>>>>>> timeout settings.  Does this exception occur with a large file in 
>>>>>> your production environment?  If so, is that same file available 
>>>>>> in your dev environment?
>>>>>>
>>>>>> You may want to compare the settings on FTP servers and make sure 
>>>>>> they're the same.
>>>>>>
>>>>>> Hope this helps,
>>>>>>
>>>>>> Mark
>>>>>>
>>>>>> PS Don't forget to prefix the subject lines of your email with 
>>>>>> "[VFS]" as this list is shared by a lot of different groups.
>>>>>>
>>>>>> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>>>>>>
>>>>>>> Hello,
>>>>>>> I've a Java 1.5 program retrieving files over ftp using net 
>>>>>>> 1.4.1, which works fine in our dev environment, but throws the 
>>>>>>> exception below in our production environment on the listFiles() 
>>>>>>> call.
>>>>>>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>>>>>>> 2) I'm able to list files with the ftp cli client on the same 
>>>>>>> production machine that the Java program is running on, so 
>>>>>>> network ACLs seem ok
>>>>>>> Is there anything else I am missing?
>>>>>>> I'm at loss on how to resolve this issue and would appreciate 
>>>>>>> your input.
>>>>>>> Thanks,
>>>>>>>
>>>>>>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>>>>>>> java.net.SocketException: Connection reset
>>>>>>> java.net.SocketException: Connection reset
>>>>>>>     at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>>>>     at 
>>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411) 
>>>>>>>
>>>>>>>     at 
>>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>>>>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>>>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>>>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>>>>     at 
>>>>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>>>>>>
>>>>>>>     at 
>>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141)
>>>>>>>     at 
>>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188)
>>>>>>>     at 
>>>>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136) 
>>>>>>>
>>>>>>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>>>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>>>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: commons-user-help@jakarta.apache.org
>
>
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Posted by Cyril Bouteille <cy...@peerflix.com>.
Hi Rory,
Please find below the output of the listener. Let me know what you think!

220 envmgr2 Microsoft FTP Service (Version 5.0).
USER FTP_USPS_CONFIRM
331 Password required for FTP_USPS_CONFIRM.
PASS ***
230-Welcome to Envelope Manager FTP
230 User FTP_USPS_CONFIRM logged in.
INFO 10:53:44 MailScanJob.runJob: Connected to ftp.envmgr.com as 
FTP_USPS_CONFIRM -- 230-Welcome to Envelope Manager FTP
230 User FTP_USPS_CONFIRM logged in.
CWD /confirm
250 CWD command successful.
PWD
257 "/confirm" is current directory.
INFO 10:53:44 MailScanJob.runJob: MailScan Folder: /confirm
TYPE A
200 Type set to A.
INFO 10:53:46 MailScanJob.processMailScans: Retrieving list of files in 
directory...
SYST
215 Windows_NT version 5.0
PASV
227 Entering Passive Mode (65,203,54,10,5,104).
LIST
125 Data connection already open; Transfer starting.

hangs there for a while... and then blows up with SocketException: 
connection reset.

Rory Winston wrote:
> Hi Cyril
>
> Can you try again with 2.0, but this time can you attach a 
> PrintCommandListener to the FTPClient instance? You can see how to do 
> this here:
>
> FTPClient client = new FTPClient();
> client.addProtocolCommandListener(new PrintCommandListener(new 
> PrintWriter(System.out)));
>
>
> This will log all FTP traffic to stdout. When you have done this, can 
> you send the relevant output?
>
> A more comprehensive way to try and locate the problem is to download 
> the source distribution as well:
>
> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT-src.zip 
>
>
> And then run your test program from within your IDE, after attaching a 
> breakpoint at the relevant location.
> Is the FTP server in question publicly accessible?
>
> Thanks
> Rory
>
>
>
>
>
>
>
>
>
> Cyril Bouteille wrote:
>> Hi Rory,
>> I just tried your 2.0 snapshot and I'm getting the exact same issue 
>> (see log below).
>> I'm assuming I'm using the new jar correctly as the line #s in the 
>> stack trace have changed, but please let me know if it's not the case.
>> Any other idea? Is there any way to turn on debug logging for this lib?
>> Thank you,
>>
>> INFO 08:58:06 MailScanJob.runJob: Connected to ftp.envmgr.com as xxx --
>> 220 envmgr2 Microsoft FTP Service (Version 5.0).
>> 331 Password required for xxx
>> 230-Welcome to Envelope Manager FTP
>> 230 User xxx logged in.
>> INFO 08:58:06 MailScanJob.runJob: MailScan Folder: /confirm
>> INFO 08:58:08 MailScanJob.processMailScans: Retrieving list of files 
>> in directory...
>> SEVERE 09:01:20 MailScanJob.runJob: MailScanJob.runJob: Exception 
>> java.net.SocketException: Connection reset
>> java.net.SocketException: Connection reset
>>        at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>        at 
>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>        at 
>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>        at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>        at java.io.BufferedReader.fill(BufferedReader.java:136)
>>        at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>        at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>        at 
>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:53) 
>>
>>        at 
>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:152) 
>>
>>        at 
>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:100) 
>>
>>        at 
>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2314) 
>>
>>        at 
>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2281) 
>>
>>        at 
>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2058)
>>        at 
>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2105)
>>        at 
>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>        at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>        at peerflix.job.PfxJob.main(PfxJob.java:97)
>>
>>
>> Rory Winston wrote:
>>> Hi Cyril
>>>
>>> If you are running Java 1.5 or later, you can try the latest 
>>> snapshot of commons-net 2.0 and see if that fixes the issue:
>>>
>>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT.jar 
>>>
>>>
>>> Rory
>>>
>>> Cyril Bouteille wrote:
>>>> Thanks for your reply Mark.
>>>> This exception occurs on a simple 'ls' (listFiles()) in a directory 
>>>> with less than 100 files. This command returns within a couple 
>>>> seconds @ ftp cli. But the commons.net program can hang for hours 
>>>> and then exit with this "connection reset" exception.
>>>> We do use the same FTP server in dev and prod. It's one from the 
>>>> USPS. Only the client network and machine the commons.net program 
>>>> runs on is different.
>>>> It feels like a network connectivity issue, but I don't understand 
>>>> how the ftp cli and commons.net library behave differently in a way 
>>>> explaining this...
>>>> Any idea?
>>>>
>>>> Mark Fortner wrote:
>>>>> Sounds like your production environment has different FTP socket 
>>>>> timeout settings.  Does this exception occur with a large file in 
>>>>> your production environment?  If so, is that same file available 
>>>>> in your dev environment?
>>>>>
>>>>> You may want to compare the settings on FTP servers and make sure 
>>>>> they're the same.
>>>>>
>>>>> Hope this helps,
>>>>>
>>>>> Mark
>>>>>
>>>>> PS Don't forget to prefix the subject lines of your email with 
>>>>> "[VFS]" as this list is shared by a lot of different groups.
>>>>>
>>>>> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>>>>>
>>>>>> Hello,
>>>>>> I've a Java 1.5 program retrieving files over ftp using net 
>>>>>> 1.4.1, which works fine in our dev environment, but throws the 
>>>>>> exception below in our production environment on the listFiles() 
>>>>>> call.
>>>>>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>>>>>> 2) I'm able to list files with the ftp cli client on the same 
>>>>>> production machine that the Java program is running on, so 
>>>>>> network ACLs seem ok
>>>>>> Is there anything else I am missing?
>>>>>> I'm at loss on how to resolve this issue and would appreciate 
>>>>>> your input.
>>>>>> Thanks,
>>>>>>
>>>>>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>>>>>> java.net.SocketException: Connection reset
>>>>>> java.net.SocketException: Connection reset
>>>>>>     at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>>>     at 
>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>>>>>     at 
>>>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>>>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>>>     at 
>>>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>>>>>
>>>>>>     at 
>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>>>>>
>>>>>>     at 
>>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>>>>>
>>>>>>     at 
>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>>>>>
>>>>>>     at 
>>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>>>>>
>>>>>>     at 
>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141)
>>>>>>     at 
>>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188)
>>>>>>     at 
>>>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136) 
>>>>>>
>>>>>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>>>


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Posted by Rory Winston <rw...@eircom.net>.
Hi Cyril

Can you try again with 2.0, but this time can you attach a 
PrintCommandListener to the FTPClient instance? You can see how to do 
this here:

FTPClient client = new FTPClient();
client.addProtocolCommandListener(new PrintCommandListener(new PrintWriter(System.out)));


This will log all FTP traffic to stdout. When you have done this, can you send the relevant output?

A more comprehensive way to try and locate the problem is to download the source distribution as well:

http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT-src.zip

And then run your test program from within your IDE, after attaching a breakpoint at the relevant location. 

Is the FTP server in question publicly accessible?

Thanks
Rory









Cyril Bouteille wrote:
> Hi Rory,
> I just tried your 2.0 snapshot and I'm getting the exact same issue 
> (see log below).
> I'm assuming I'm using the new jar correctly as the line #s in the 
> stack trace have changed, but please let me know if it's not the case.
> Any other idea? Is there any way to turn on debug logging for this lib?
> Thank you,
>
> INFO 08:58:06 MailScanJob.runJob: Connected to ftp.envmgr.com as xxx --
> 220 envmgr2 Microsoft FTP Service (Version 5.0).
> 331 Password required for xxx
> 230-Welcome to Envelope Manager FTP
> 230 User xxx logged in.
> INFO 08:58:06 MailScanJob.runJob: MailScan Folder: /confirm
> INFO 08:58:08 MailScanJob.processMailScans: Retrieving list of files 
> in directory...
> SEVERE 09:01:20 MailScanJob.runJob: MailScanJob.runJob: Exception 
> java.net.SocketException: Connection reset
> java.net.SocketException: Connection reset
>        at java.net.SocketInputStream.read(SocketInputStream.java:168)
>        at 
> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>        at 
> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>        at java.io.InputStreamReader.read(InputStreamReader.java:167)
>        at java.io.BufferedReader.fill(BufferedReader.java:136)
>        at java.io.BufferedReader.readLine(BufferedReader.java:299)
>        at java.io.BufferedReader.readLine(BufferedReader.java:362)
>        at 
> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:53) 
>
>        at 
> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:152) 
>
>        at 
> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:100) 
>
>        at 
> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2314) 
>
>        at 
> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2281) 
>
>        at 
> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2058)
>        at 
> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2105)
>        at 
> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>        at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>        at peerflix.job.PfxJob.main(PfxJob.java:97)
>
>
> Rory Winston wrote:
>> Hi Cyril
>>
>> If you are running Java 1.5 or later, you can try the latest snapshot 
>> of commons-net 2.0 and see if that fixes the issue:
>>
>> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT.jar 
>>
>>
>> Rory
>>
>> Cyril Bouteille wrote:
>>> Thanks for your reply Mark.
>>> This exception occurs on a simple 'ls' (listFiles()) in a directory 
>>> with less than 100 files. This command returns within a couple 
>>> seconds @ ftp cli. But the commons.net program can hang for hours 
>>> and then exit with this "connection reset" exception.
>>> We do use the same FTP server in dev and prod. It's one from the 
>>> USPS. Only the client network and machine the commons.net program 
>>> runs on is different.
>>> It feels like a network connectivity issue, but I don't understand 
>>> how the ftp cli and commons.net library behave differently in a way 
>>> explaining this...
>>> Any idea?
>>>
>>> Mark Fortner wrote:
>>>> Sounds like your production environment has different FTP socket 
>>>> timeout settings.  Does this exception occur with a large file in 
>>>> your production environment?  If so, is that same file available in 
>>>> your dev environment?
>>>>
>>>> You may want to compare the settings on FTP servers and make sure 
>>>> they're the same.
>>>>
>>>> Hope this helps,
>>>>
>>>> Mark
>>>>
>>>> PS Don't forget to prefix the subject lines of your email with 
>>>> "[VFS]" as this list is shared by a lot of different groups.
>>>>
>>>> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>>>>
>>>>> Hello,
>>>>> I've a Java 1.5 program retrieving files over ftp using net 1.4.1, 
>>>>> which works fine in our dev environment, but throws the exception 
>>>>> below in our production environment on the listFiles() call.
>>>>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>>>>> 2) I'm able to list files with the ftp cli client on the same 
>>>>> production machine that the Java program is running on, so network 
>>>>> ACLs seem ok
>>>>> Is there anything else I am missing?
>>>>> I'm at loss on how to resolve this issue and would appreciate your 
>>>>> input.
>>>>> Thanks,
>>>>>
>>>>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>>>>> java.net.SocketException: Connection reset
>>>>> java.net.SocketException: Connection reset
>>>>>     at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>>     at 
>>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>>>>     at 
>>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>>     at 
>>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>>>>
>>>>>     at 
>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>>>>
>>>>>     at 
>>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>>>>
>>>>>     at 
>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>>>>
>>>>>     at 
>>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>>>>
>>>>>     at 
>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141)
>>>>>     at 
>>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188)
>>>>>     at 
>>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>>>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: commons-user-help@jakarta.apache.org
>
>
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Posted by Cyril Bouteille <cy...@peerflix.com>.
Hi Rory,
I just tried your 2.0 snapshot and I'm getting the exact same issue (see 
log below).
I'm assuming I'm using the new jar correctly as the line #s in the stack 
trace have changed, but please let me know if it's not the case.
Any other idea? Is there any way to turn on debug logging for this lib?
Thank you,

INFO 08:58:06 MailScanJob.runJob: Connected to ftp.envmgr.com as xxx --
220 envmgr2 Microsoft FTP Service (Version 5.0).
331 Password required for xxx
230-Welcome to Envelope Manager FTP
230 User xxx logged in.
INFO 08:58:06 MailScanJob.runJob: MailScan Folder: /confirm
INFO 08:58:08 MailScanJob.processMailScans: Retrieving list of files in 
directory...
SEVERE 09:01:20 MailScanJob.runJob: MailScanJob.runJob: Exception 
java.net.SocketException: Connection reset
java.net.SocketException: Connection reset
        at java.net.SocketInputStream.read(SocketInputStream.java:168)
        at 
sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
        at 
sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
        at java.io.InputStreamReader.read(InputStreamReader.java:167)
        at java.io.BufferedReader.fill(BufferedReader.java:136)
        at java.io.BufferedReader.readLine(BufferedReader.java:299)
        at java.io.BufferedReader.readLine(BufferedReader.java:362)
        at 
org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:53)
        at 
org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:152)
        at 
org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:100)
        at 
org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2314)
        at 
org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2281)
        at 
org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2058)
        at 
org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2105)
        at 
peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
        at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
        at peerflix.job.PfxJob.main(PfxJob.java:97)


Rory Winston wrote:
> Hi Cyril
>
> If you are running Java 1.5 or later, you can try the latest snapshot 
> of commons-net 2.0 and see if that fixes the issue:
>
> http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT.jar 
>
>
> Rory
>
> Cyril Bouteille wrote:
>> Thanks for your reply Mark.
>> This exception occurs on a simple 'ls' (listFiles()) in a directory 
>> with less than 100 files. This command returns within a couple 
>> seconds @ ftp cli. But the commons.net program can hang for hours and 
>> then exit with this "connection reset" exception.
>> We do use the same FTP server in dev and prod. It's one from the 
>> USPS. Only the client network and machine the commons.net program 
>> runs on is different.
>> It feels like a network connectivity issue, but I don't understand 
>> how the ftp cli and commons.net library behave differently in a way 
>> explaining this...
>> Any idea?
>>
>> Mark Fortner wrote:
>>> Sounds like your production environment has different FTP socket 
>>> timeout settings.  Does this exception occur with a large file in 
>>> your production environment?  If so, is that same file available in 
>>> your dev environment?
>>>
>>> You may want to compare the settings on FTP servers and make sure 
>>> they're the same.
>>>
>>> Hope this helps,
>>>
>>> Mark
>>>
>>> PS Don't forget to prefix the subject lines of your email with 
>>> "[VFS]" as this list is shared by a lot of different groups.
>>>
>>> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>>>
>>>> Hello,
>>>> I've a Java 1.5 program retrieving files over ftp using net 1.4.1, 
>>>> which works fine in our dev environment, but throws the exception 
>>>> below in our production environment on the listFiles() call.
>>>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>>>> 2) I'm able to list files with the ftp cli client on the same 
>>>> production machine that the Java program is running on, so network 
>>>> ACLs seem ok
>>>> Is there anything else I am missing?
>>>> I'm at loss on how to resolve this issue and would appreciate your 
>>>> input.
>>>> Thanks,
>>>>
>>>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>>>> java.net.SocketException: Connection reset
>>>> java.net.SocketException: Connection reset
>>>>     at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>>     at 
>>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>>>     at 
>>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>>     at 
>>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>>>
>>>>     at 
>>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>>>
>>>>     at 
>>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>>>
>>>>     at 
>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>>>
>>>>     at 
>>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>>>
>>>>     at 
>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141)
>>>>     at 
>>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188)
>>>>     at 
>>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>>


---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org


Re: [NET] listFiles throws SocketException: Connection reset even in passive mode

Posted by Rory Winston <rw...@eircom.net>.
Hi Cyril

If you are running Java 1.5 or later, you can try the latest snapshot of 
commons-net 2.0 and see if that fixes the issue:

http://people.apache.org/~rwinston/commons-net-2.0/commons-net-2.0.0-SNAPSHOT.jar

Rory

Cyril Bouteille wrote:
> Thanks for your reply Mark.
> This exception occurs on a simple 'ls' (listFiles()) in a directory 
> with less than 100 files. This command returns within a couple seconds 
> @ ftp cli. But the commons.net program can hang for hours and then 
> exit with this "connection reset" exception.
> We do use the same FTP server in dev and prod. It's one from the USPS. 
> Only the client network and machine the commons.net program runs on is 
> different.
> It feels like a network connectivity issue, but I don't understand how 
> the ftp cli and commons.net library behave differently in a way 
> explaining this...
> Any idea?
>
> Mark Fortner wrote:
>> Sounds like your production environment has different FTP socket 
>> timeout settings.  Does this exception occur with a large file in 
>> your production environment?  If so, is that same file available in 
>> your dev environment?
>>
>> You may want to compare the settings on FTP servers and make sure 
>> they're the same.
>>
>> Hope this helps,
>>
>> Mark
>>
>> PS Don't forget to prefix the subject lines of your email with 
>> "[VFS]" as this list is shared by a lot of different groups.
>>
>> On Friday, December 29, 2006, at 07:57 PM, Cyril Bouteille wrote:
>>
>>> Hello,
>>> I've a Java 1.5 program retrieving files over ftp using net 1.4.1, 
>>> which works fine in our dev environment, but throws the exception 
>>> below in our production environment on the listFiles() call.
>>> 1) I am calling enterLocalPassiveMode() to use passive mode, and
>>> 2) I'm able to list files with the ftp cli client on the same 
>>> production machine that the Java program is running on, so network 
>>> ACLs seem ok
>>> Is there anything else I am missing?
>>> I'm at loss on how to resolve this issue and would appreciate your 
>>> input.
>>> Thanks,
>>>
>>> SEVERE 16:13:14 MailScanJob.runJob: Exception 
>>> java.net.SocketException: Connection reset
>>> java.net.SocketException: Connection reset
>>>     at java.net.SocketInputStream.read(SocketInputStream.java:168)
>>>     at 
>>> sun.nio.cs.StreamDecoder$CharsetSD.readBytes(StreamDecoder.java:411)
>>>     at 
>>> sun.nio.cs.StreamDecoder$CharsetSD.implRead(StreamDecoder.java:453)
>>>     at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:183)
>>>     at java.io.InputStreamReader.read(InputStreamReader.java:167)
>>>     at java.io.BufferedReader.fill(BufferedReader.java:136)
>>>     at java.io.BufferedReader.readLine(BufferedReader.java:299)
>>>     at java.io.BufferedReader.readLine(BufferedReader.java:362)
>>>     at 
>>> org.apache.commons.net.ftp.FTPFileEntryParserImpl.readNextEntry(FTPFileEntryParserImpl.java:95) 
>>>
>>>     at 
>>> org.apache.commons.net.ftp.FTPListParseEngine.readStream(FTPListParseEngine.java:150) 
>>>
>>>     at 
>>> org.apache.commons.net.ftp.FTPListParseEngine.readServerList(FTPListParseEngine.java:98) 
>>>
>>>     at 
>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2396) 
>>>
>>>     at 
>>> org.apache.commons.net.ftp.FTPClient.initiateListParsing(FTPClient.java:2364) 
>>>
>>>     at 
>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2141)
>>>     at 
>>> org.apache.commons.net.ftp.FTPClient.listFiles(FTPClient.java:2188)
>>>     at 
>>> peerflix.job.trade.MailScanJob.processMailScans(MailScanJob.java:136)
>>>     at peerflix.job.trade.MailScanJob.runJob(MailScanJob.java:87)
>>>     at peerflix.job.PfxJob.main(PfxJob.java:97)
>>>
>>>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
> For additional commands, e-mail: commons-user-help@jakarta.apache.org
>
>
>
>



---------------------------------------------------------------------
To unsubscribe, e-mail: commons-user-unsubscribe@jakarta.apache.org
For additional commands, e-mail: commons-user-help@jakarta.apache.org