    # File lib/merb-core/dispatch/dispatcher.rb, line 46
        def handle
          @start = env["merb.request_start"] = Time.now
          Merb.logger.info { "Started request handling: #{start.to_s}" }

          find_route!
          return rack_response if handled?

          klass = controller

          unless klass < Controller
            raise NotFound,
              "Controller '#{klass}' not found.\n" \
              "If Merb tries to find a controller for static files, " \
              "you may need to check your Rackup file, see the Problems " \
              "section at: http://wiki.merbivore.com/pages/rack-middleware"
          end

          Merb.logger.debug { "Routed to: #{klass::_filter_params(params).inspect}" }

          if klass.abstract?
            raise NotFound, "The '#{klass}' controller has no public actions"
          end

          dispatch_action(klass, params[:action])
        rescue Object => exception
          dispatch_exception(exception)
        end