Jruby 1.6.0.RC2 + Rails3 + Glassfish-gem = большой провал - PullRequest
0 голосов
/ 19 февраля 2011

Возникли проблемы с запуском Glassfish на моем сервере. jRuby с самого начала безумно сумасшедший, но это убивает меня.

У меня довольно сложное приложение, поэтому я не буду вдаваться в подробности, за исключением того, что версия Rails2 работает под jRuby 1.5.1.

При запуске и первом попадании на сервер я получаю следующую ошибку:

Feb 19, 2011 12:20:14 AM com.sun.grizzly.jruby.RackGrizzlyAdapter dispatchRequest 
WARNING: (NoMethodError) undefined method `call' for nil:NilClass 
org.jruby.exceptions.RaiseException: (NoMethodError) undefined method `call' for nil:NilClass   
at Rack::Handler::Grizzly.call(/usr/local/rvm/gems/jruby-1.6.0.RC2/gems/glassfish-1.0.3.dev-universal-java/lib/rack/handler/grizzly.rb:55)

Я пробовал разводить стеклянных рыбок каждый день с воскресенья, а также обменивал различные драгоценные камни. Кажется, у bundler 1.0.10 также есть некоторые проблемы. Это сломало мое приложение Rails2.

Буду признателен за любую информацию о том, где даже начать искать.

Приложение отлично работает при запуске webrick.

1 Ответ

0 голосов
/ 19 февраля 2011

Стеку jRuby еще предстоит пройти долгий путь. Наконец-то разгадал этот разгром. Получается, что файл rackup.rb, извлеченный в glassfish из еще неопознанного источника (я его взломал и перешел к нему), имеет логику, которая поддерживает только стойки в разработке, тестировании или производстве. Я использовал многоступенчатую среду, чтобы я мог проверить вещи. У меня была шокерская постановочная обстановка. Так что все это отлично работало под старым стеклом, который обнаруживал и запускал rails отдельно, но создавал множество проблем для приложения rails3, работающего с файлом стойки config.ru.

Я опубликую обновление в своем блоге, когда мне это удастся правильно. Вы не можете исправить это, потому что Glassfish загружается из установленного местоположения драгоценного камня, а не из вашего собственного проекта или даже из репозитория.

...