/** * Return the unwrapped <code>CoyoteRequest</code> object. */ private static Request getUnwrappedCoyoteRequest(HttpServletRequest request){ Request req = null; ServletRequest servletRequest = request; try{ ServletRequest prevRequest = null; while (servletRequest != prevRequest && servletRequest instanceof ServletRequestWrapper) { prevRequest = servletRequest; servletRequest = ((ServletRequestWrapper)servletRequest).getRequest(); } if (servletRequest instanceof RequestFacade) { req = ((RequestFacade)servletRequest).getUnwrappedCoyoteRequest(); } } catch (AccessControlException ex){ logger.log(Level.FINE, "Programmatic login faiied to get request"); } return req; }
getUnwrappedCoyoteRequest().getUserPrincipal();