Um einem HTTP Client eine komprimierte GZIP Antwort zu schicken, muss man im Fall eines Jetty Servers im Servlet selbst Hand anlegen. Doch zum Glück ist alles vorhanden und kann leicht in den bestehenden Code eingebaut werden. Statt einen gewöhnlichen PrintWriter oder OutputStream, nimmt man nun den GZIPOutputStream. Zudem sollte man daran denken das Content-Encoding im Response-Header auf “gzip“ zu setzen.
if (GZIP) {
response.setHeader("Content-Encoding", "gzip");
GZIPOutputStream out = new GZIPOutputStream(response.getOutputStream());
out.write(result.toJSONString().getBytes());
out.flush();
out.close();
} else {
PrintWriter out = response.getWriter();
out.write(result.toJSONString());
out.flush();
out.close();
}

