Question

i have ubuntu 8.10, running glassfish v3 (not prelude). first deployment of any jruby on a glassfish v3 SERVER (not the gem).

i have deployed the app using the 'choose folder' method, rather than the asadmin deploy method, though i have also tried that.

i get the following error message:

#|2010-10-18T16:48:01.643+1100|SEVERE|glassfish3.0.1|org.glassfish.scripting.jruby.JRubyContainer|_ThreadID=35;_ThreadName=Thread-1;|no such file to load -- dispatcher
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:239:in `require'
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:225:in `load_dependency'
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:591:in `new_constants_in'
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:225:in `load_dependency'
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:239:in `require'
from file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/rack/adapter/rails.rb:99:in `load_application'
from file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/rack/adapter/rails.rb:75:in `initialize'
from file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/jruby/rack/rails.rb:25:in `new'
from file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/jruby/rack/rails.rb:25:in `new'
from <script>:1

/home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:239:in `require': no such file to load -- dispatcher (LoadError)
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:239:in `require'
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:225:in `load_dependency'
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:591:in `new_constants_in'
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:225:in `load_dependency'
from /home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:239:in `require'
from file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/rack/adapter/rails.rb:99:in `load_application'
from file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/rack/adapter/rails.rb:75:in `initialize'
from file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/jruby/rack/rails.rb:25:in `new'
from file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/jruby/rack/rails.rb:25:in `new'
from <script>:1
...internal jruby stack elided...
from Kernel.require(/home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:239)
from ActiveSupport::Dependencies::Loadable.require(/home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:225)
from ActiveSupport::Dependencies::Loadable.load_dependency(/home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:591)
from ActiveSupport::Dependencies.new_constants_in(/home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:225)
from ActiveSupport::Dependencies::Loadable.load_dependency(/home/architect/development/jruby/jruby-1.5.3/lib/ruby/gems/1.8/gems/activesupport-3.0.0/lib/active_support/dependencies.rb:239)
from ActiveSupport::Dependencies::Loadable.require(file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/rack/adapter/rails.rb:99)
from Rack::Adapter::Rails.load_application(file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/rack/adapter/rails.rb:75)
from Rack::Adapter::Rails.initialize(file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/jruby/rack/rails.rb:25)
from (unknown).new(file:/opt/glassfishv3/glassfish/modules/grizzly-jruby.jar!/jruby/rack/rails.rb:25)
from #<Class:01x1719508>.new(<script>:1)
from (unknown).(unknown)(:1)

this is very bizarre. i can't find much on it, but i know from experience that dispatcher was removed and one can no longer use ruby on rails apps with mongrel. in this instance, with jruby in place and glassfish v3, i have no idea what is going on. why is it even looking for dispatcher?

any tips on my config would be great. what am i likely missing? shouldn't glassfish be treating it as a rack application and this problem NOT be occuring.

also note, if i run the app with jruby in WEBrick, it's all good.

thanks!

Was it helpful?

Solution

It looks like the GF v3 JRuby scripting container is expecting to load "dispatcher" and thus is probably not Rails 3 ready. Given what I've heard from Oracle about scripting support inside V3, I'm not sure you'll see a fix for this soon.

A better option for deploying inside V3 would be to use Warbler to create a war file and deploy that.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top