@Override
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
// Request logger
final Descriptor descriptor = Descriptor.getDescriptorSingleton();
if( descriptor.allowRequestLogging() && !descriptor.requestsFiltered()) {
// Wrap HttpServletRequest, because both request Logger and xmlrpc
// need the request InputStream, which is consumed when read.
request =
new HttpServletRequestWrapper(request, /*formEncoding*/ "utf-8" );
descriptor.doLogRequestInReplayLog(request);