ResponseWrapper responseWrapper = new ResponseWrapper((HttpServletResponse)response);
chain.doFilter(requestWrapper, responseWrapper);
String responseText = responseWrapper.toString();
if (responseText != null && responseText.length() > 0) {
String result = responseText;
CharArrayWriter caw = new CharArrayWriter();
// Maqetta's servlet overrides the encoding with UTF-8, as does the HTML META tag in
// typical Maqetta content. Not clear if either of those get picked up. Hard-code UTF-8, for now.
HTMLParser parser = new HTMLParser(caw, /*response.getCharacterEncoding()*/ "UTF-8", configScriptTag.toString().replace("__CONTEXT_PATH__", request.getServletContext().getContextPath()), pathInfo);
parser.parse(responseText);
result = caw.toString();
if (logger.isLoggable(Level.FINEST)) {
logger.logp(Level.FINEST, getClass().getName(), "doFilter", "filter response : "+result);
}
response.setContentLength(result.length());
out.write(result);