Re: Ploblem doing HTTP POST via URLConnection
M?rio wrote:
I am trying to post an object to a servlet via HTTP using the
following code,
but unfortunately, nothing is sent to the server:
private static void doJavaPost() throws IOException {
URL url = new URL("http://localhost:9999/myservlet");
URLConnection connection = url.openConnection();
connection.setDoOutput(true);
ByteArrayOutputStream data = new ByteArrayOutputStream();
ObjectOutputStream out = new ObjectOutputStream(data);
out.writeObject(new Date());
out.close();
OutputStream os = connection.getOutputStream();
data.writeTo(os);
os.flush();
os.close();
}
Does someone know why this does not generate a POST request?
Because you don't ask the connection to do that. Call
connection.getInputStream() and the request will be sent.
BTW: You can skip the writing to the ByteArrayOutputStream
and initialized the ObjectOutputStream with
connection.getOutputStream()
Calling of os.close() isn't needed, either.
Regards, Lothar
--
Lothar Kimmeringer E-Mail: spamfang@kimmeringer.de
PGP-encrypted mails preferred (Key-ID: 0x8BC3CD81)
Always remember: The answer is forty-two, there can only be wrong
questions!