Hai all, Good morning. I have a small problem in accessing servlets using URLConnection in stand-alone application. Following is the snippet of client and servlet. URL url = new URL("http://mymachine/abc/Servlet"); HttpURLConnection httpConnection = (HttpURLConnection) url.openConnection(); httpConnection.setDoOutput(true); httpConnection.setDoInput(true); httpConnection.setRequestMethod("POST"); httpConnection.setUseCaches(false); httpConnection.setRequestProperty("Content-type", "application/octet-stream"); httpConnection.setAllowUserInteraction(false); PrintWriter out = new PrintWriter(httpConnection.getOutputStream()); String str = "Hello world"; out.println(str); out.close();
hi Poornachandran, u can try this after ur PrintWriter out = new PrintWriter(httpConnection.getOutputStream()); line, BufferedInputStream bis = new BufferedInputStream(httpConnection.getInputStream()); bis.close(); that should work. i face the similar problem and the above solution did work. i deduced that ONLY IF WE OPEN AN INPUT STREAM CONNECTION to the servlet, the servlet RESPONDS...DOESN'T matter if we don't want to do anything with the input stream we get (thats why we are closing it in above code). regards maulin
William Brogden
Author and all-around good cowpoke
Rancher
Joined: Mar 22, 2000
Posts: 12271
1
posted
0
I'm not sure if this is related to your problem, but you should never close the output stream until you are through with the connection - it closes the socket and you will never get any response. Instead you should flush() the output stream so the buffered data will all be sent. Bill