# File lib/openid/consumer.rb, line 268
    def begin(user_url)
      user_url = OpenID::Util.normalize_url(user_url)
      unless user_url
        user_url = user_url.to_s
        return FailureRequest.new("Invalid URL: #{user_url}")
      end

      discovery = self.get_discovery(user_url)
      service = discovery.next_service

      if service.nil?
        return FailureRequest.new('No service endpoints found.')
      end

      return self.begin_without_discovery(service)
    end