I have a rather interesting problem. I'm looking more for guesses at what is happening, than a solution.
Here is a quick overview for reference:
So I have an applet embedded on a website. The runtime data comes from files on the same server (which is a free host) as the website. I have one section of code which reads a server directory and parses for a list of files in the directory. To connect to the directory, I am using URLConnection and a BufferedReader (which I send a InputStreamReader to), and I connect via FTP (instead of usual URL) due to server related restrictions. I then have other sections of code that uses the same basic principle to read files (instead of a directory listing).
Now, my problem is ONLY with the directory listing part. The rest of the file reading works perfectly (as far as I know). Here is where it gets interesting: my problem seems to be specific to only certain machines. I've attempted to run the program on 3 separate machines, 2 of which worked, and the other one failed, throwing a java.net.SocketException: Connection Reset. I've attempted to pinpoint the problem, but the more variables I take into account, the further I seem get from the answer. Here are my test cases:
Computer 1: Windows 7, Firefox 3.6, Network A, Virus Protection A
Computer 2: Windows 7, Firefox 12 (no addons), Internet Explorer 9 (no addons), Network A, Virus Protection A
Computer 3: Windows 7, Firefox 12 (no addons), Internet Explorer 9 (no addons), Network B, Virus Protection B
Now, Computer 1 and 3 work perfectly. Computer 1 and Computer 2 are on the same network (while Computer 3 is in an entirely different county), so I've ruled out the network. Computer 2 fails on all of its browsers (Firefox, Chrome, and Internet Explorer). However I've ruled out browser conflicts due to Computer 3. All 3 computers run the same operating system, so I've ruled that out. And Computer 1 and Computer 2 have the same Virus Protection program, so I can rule that out. It is clearly something specific to Computer 2, but I have no clue what it could be.
I've pretty much ran out of variables here. Does anyone have any ideas for why one computer would throw a SocketException, while others wouldn't? Or can anyone think of any more variables I can rule out?