Hallo,
response.setContentType( urlcon.getContentType() );
Wenn urlcon.getContentType() lediglich "text/html" und nicht "text/html; charset=UTF-8" zurückliefert, so wird vom Servlet-Standard Latin1 als Encoding angenommen, zumindest wenn ich die Servlet-Spec richtig verstehe.
Viele Grüße,
Christian