Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Ruby: Общие вопросы > uninitialized constant Jabber::ErrorException


Автор: twins1488 22.2.2009, 21:48
всем доброго времени суток. я в Ruby совсем недавно и сразу наткнулся на проблему. при выполнении в командной строке, между строк появляется ошибка uninitialized constant Jabber::ErrorException
помогите как с ней справиться. Ruby 185-21 под Windows. библиотека xmpp4r есть, а в чем проблема не знаю.
p.s. не судите трого)

Автор: twins1488 25.2.2009, 19:01
проблема возникает когда идет подключение к комнате. вот часть кода:
class Flooder < Jabber::Client
  def initialize (jid, password)
    super(jid); @password=password; @conferences={}
  end
  def connauth
    puts "Connecting (JID: #{@jid.strip.to_s}, password: #{@password})"
    begin
      connect
    rescue
      puts "Unable to connect to Jabber server: #$!"
      return FAIL
    end
    begin
      auth(@password)
      puts "Authenticated successfully"
      return WIN
    rescue
      puts "Unable to authenticate; trying to register new account."
      begin
        register(@password); auth(@password)
        puts "Authenticated successfully"
        return WIN
      rescue
        puts "Unable to register: #$!"
        return REG
      end
    end
  end
  def join (conference)
    conf=Jabber::MUC::SimpleMUCClient.new(self)
    begin
      conf.join(conference)
      @conferences[conference.strip]=conf
      puts "Successfully joined #{conference.to_s}"
      return WIN
    rescue Jabber::ErrorException => e
      puts "Unable to join #{conference.to_s}: #{e.error.code}"
      case e.error.code
      when 403
        return REG
      when 407
        puts "#{conference.strip} is members-only; exiting"
        exit
      else
        return FAIL
      end
    end
  end

 def join (conference) не работает. I need help

Автор: source777 25.2.2009, 20:23
Цитата(twins1488 @  25.2.2009,  19:01 Найти цитируемый пост)
def join (conference) не работает. I need help 

Что значит "не работает"? И почему ты считаешь, что этот метод должен работать так как ты хочешь? при этом нигде не написано, что ты ожидаешь от него...

Автор: twins1488 26.2.2009, 22:01
я хочу понять Ruby. и чтобы с чего то начать, попросил у знакомого код. рабочий. но меня замучала эта ошибка и я хочу разобраться что у меня не так

Автор: source777 26.2.2009, 23:22
Цитата(twins1488 @  26.2.2009,  22:01 Найти цитируемый пост)
я хочу разобраться что у меня не так 
ну так разбирайся, самые необходимые вопросы я тебе уже дал... они тебе многократно пригодятся, если ты захочешь стать программистом...

P.S. Вопрос "почему данный код не работает?" можно задавать только после того, как ты составил подробнейшее доказательство того, почему он должен работать... Естественно до вопроса дело не дойдёт, т.к. в процессе доказательства самому себе в 99.999% случаев ошибка находится. smile 
Твой случай - тривиален, ты просто не понимаешь как работает этот код, поэтому формулировка "не работает" совершенно некорректна!

Автор: twins1488 27.2.2009, 19:42
source777, ты прав. я не знаю как работает этот код. понимаю, что таких как я миллионы и никто не станет тратить на меня свое время, но если кто то может помочь, то буду очень благодарен.  smile 

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)