Развертывание JRuby / Rails на Glassfish: неопределенный метод bundle_path для Bundler: Модуль - PullRequest
0 голосов
/ 25 сентября 2011

Следующая ошибка появляется в моем журнале Glassfish при попытке доступа к моему приложению:

Caused by: org.jruby.exceptions.RaiseException: (NameError) method 'to_yaml' not defined in Object

Просматривая журнал я вижу это:

undefined method `bundle_path' for Bundler:Module

Я подтвердил, что warble определенно помещает драгоценный камень Bundler в мой файл .war.

(с использованием ruby ​​1.9, рельсов 3.1, glassfish 3.0 и 3.1)

Это также появляется в журнале Glassfish:

Policy Provider:Failed Permission Check: context (" myapp/myapp ") , permission (" (java.lang.reflect.ReflectPermission suppressAccessChecks) ") |#]

Однако я убедился, что разрешение предоставлено в server.policy.

РЕДАКТИРОВАТЬ: я исправил проблему с разрешением, и первые две ошибки сохраняются. (Тем не менее, проблема с подготовкой требовала, чтобы я отредактировал файл, который, в частности, не редактируется. Попытка предоставить это разрешение в server.policy в Glassfish не сработала).

Вот соответствующая информация об окружающей среде из файла журнала Glassfish: https://gist.github.com/1245825

Ответы [ 2 ]

0 голосов
/ 23 ноября 2011

Это влияет на некоторые серверы приложений, но не на другие.

См. Эту ветку для получения дополнительной информации и быстрого исправления.

https://github.com/jruby/warbler/issues/44#issuecomment-2809940

0 голосов
/ 04 октября 2011

Вы можете разместить его за пределами Glassfish, в конфигурации nginx + passenger или apache2 + passenger, и настроить ее на прокси Glassfish. Это беспроигрышное решение, если вам не нужно интегрироваться с любым другим ресурсом / приложением Java.

...