private void handleServlet(String pathInfo, HttpServletRequest request,
                               HttpServletResponse response) throws ServletException, IOException {
        // Strip the starting "/" from the path to find the JSP URL.
        GenericServlet servlet = getServlet(pathInfo);
        if (servlet != null) {
            Log.trace("Handling servlet at: {}", pathInfo);
            servlet.service(request, response);
        }
        else {
            Log.trace("Unable to handle servlet. No registration for: {}", pathInfo);
            response.setStatus(HttpServletResponse.SC_NOT_FOUND);
        }
    }
Handles a request for a Servlet. If one is found, request handling is passed to it.
If no servlet is found, a 404 error is returned.

@param pathInfo the extra path info.
@param request  the request object.
@param response the response object.
@throws ServletException if a servlet exception occurs while handling the request.
@throws IOException      if an IOException occurs while handling the request.
xmppserver/src/main/java/org/jivesoftware/openfire/container/PluginServlet.java