private void copyResponseHeaders ( HttpResponse proxyResponse , final HttpServletResponse servletResponse ) { servletResponse . setCharacterEncoding ( getContentCharSet ( proxyResponse . getEntity ( ) ) ) ; from ( Arrays . asList ( proxyResponse . getAllHeaders ( ) ) ) . filter ( new Predicate < Header > ( ) { @ Override public boolean apply ( Header header ) { return ! hopByHopHeaders . containsHeader ( header . getName ( ) ) ; } } ) . transform ( new Function < Header , Boolean > ( ) { @ Override public Boolean apply ( Header header ) { servletResponse . addHeader ( header . getName ( ) , header . getValue ( ) ) ; return true ; } } ) . toList ( ) ; }
Copy proxied response headers back to the servlet client .