Torquebox - проект не обновляется

Я установил:

  • Убунту 12.10
  • джруби 1.7.3
  • рубин 2
  • рельсы 3.2.13
  • РубиМайн 5
  • DB2 C-Экспресс

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

Затем я выполнил следующие команды, чтобы развернуть свое приложение с Torquebox 2.0:

torquebox deploy
torquebox run

Я выполнил эти команды в папке своего проекта, и в результате на локальном хосте: 8080 я вижу стартовую страницу рельсов. У меня есть следующие проблемы:

  1. Нажав на вкладку «О среде вашего приложения», я получаю следующую ошибку:

javax.servlet.ServletException: org.jruby.exceptions.RaiseException: (NameError) невозможно связать класс Java com.ibm.db2.jcc.DB2Driver, возможная отсутствующая зависимость: не удалось инициализировать класс com.ibm.db2.jcc.DB2Driver org. Torquebox.web.servlet.RackFilter.doRack(RackFilter.java:117) org.torquebox.web.servlet.RackFilter.doFilter(RackFilter.java:101) org.torquebox.web.servlet.RackFilter.doFilter(RackFilter.java: 72) org.torquebox.web.servlet.SendfileFilter.doFilter(SendfileFilter.java:49) org.torquebox.web.servlet.SendfileFilter.doFilter(SendfileFilter.java:33)

Я считаю, что это потому, что коробка крутящего момента не может найти драйвер. Но почему, поскольку это видно в моем приложении rails, и я успешно создал/перенес из него таблицы с помощью терминала? Должен ли я поставить драйвер в другом месте?

  1. Затем в документации говорится:

Как и ожидалось, изменения в вашем приложении Rails немедленно отображаются в браузере. Когда вы закончите, нажмите CTRL+C в терминале, чтобы остановить TorqueBox, прежде чем переходить к следующим шагам.

Но это именно то, что мне пришлось сделать, чтобы обновить содержимое страницы. Я изменил свой файл gem и файл database.yml, но обновление страницы не отразило этого. После того, как я остановил сервер и снова запустил его, он показывает что-то другое.

Не могли бы вы посоветовать или сказать мне, что я делаю неправильно?


person gotqn    schedule 28.03.2013    source источник
comment
не все изменения отображаются сразу, некоторые изменения требуют перезапуска процесса - вы запускали bundle install после обновления вашего Gemfile? вам обязательно потребуется перезагрузка (также изменения в database.yml требуют перезагрузки)   -  person house9    schedule 29.03.2013
comment
Да, я несколько раз запускал пакетную установку во время изменений. К сожалению, я не могу подтвердить, что это происходит снова, потому что я не могу исправить ошибку коробки крутящего момента, описанную выше.   -  person gotqn    schedule 29.03.2013


Ответы (1)


Без перезапуска сервера Torquebox вы можете повторно развернуть ручку, просто запустив touch

touch $TORQUEBOX_HOME/jboss/standalone/deployments/your_apps-knob.yml.deployed

таким образом, вам не нужно перезапускать весь сервер JBOSS.Развертывание через дескриптор

Для производственных установок вы можете использовать Capistrano Torquebox Capistrano support

person tlarevo    schedule 29.01.2014