Java, HttpURLConnection and setting the content length
I'm setting the length of the content in my HttpURLConnection, for a PUT. urlConnection.setRequestProperty("Content-Length", "" + responseJSONArray.toString(2).getBytes("UTF8").length); The actual number of bytes is 74. However, when I query the content length of urlConnection I'm returned -1 . Why is that? And why are lengths not equal (given that I set this)? I must set the content-length because I'm receiving a 411 response from the server. (Also, in the Sun examples I've seen the second argument of setRequestProperty is of type int and not String , which seems odd.) You shouldn't set this