private void processRequest(final HttpServletRequest request, final HttpServletResponse response)
throws ServletException, IOException {
LOG.info("request: " + request.getServletPath() + "?" + request.getQueryString());
final Request req = new ServletRequest(request);
if (req.getRequestType() == null) {
throw new ServletException("No action specified");
} else if (!controller.actionExists(req)) {
throw new ServletException("No such action " + req.getRequestType());
} else {
try {
final Context context = getContextForRequest(request);
processRequest(request, response, req, context);
} catch (final Exception e) {