Have you used UrlConnection.setDoOutput(true); and UrlConnection.setDoInput(true); According to the docs, if you setDoOutput(true), then this defaults setDoInput(false) which means that you can't getInputStream on the URL connection.
I have no java certifications. This makes me a bad programmer. Ignore my post.
I bet you are doing a GET or POST to a servlet or JSP page. If it's a servlet, you will probably want to make sure that you specifically close the output stream with HttpServletResponse.getWriter().close() If it's a JSP page, check to make sure that you aren't getting an exception which never forwards to an error page. I'm not sure, but I think if the servlet sets the HTTP status to anything higher than 2xx, (such as the 500 that a JSP page generates if there is an uncaught error), URLConnection will complain about a FileNotFoundException.
Yup. We were having this problem with WebSphere 4.0. Struts actions that worked under Tomcat and WebLogic broke all of a sudden under WebSphere 4.0. If you're going to do an HttpServletResponse.getOutputStream() and write to it, flushing the stream isn't enough; you have to close the stream before your action returns, or you'll get a 500. - James