Sorry for the long email. :-(

rails-integration is looking great! But still a couple of kinks here  
and there. :-)

This is an account of me trying to get my app running as a war file  
with the 'war-snapshot' plugin provided by rails-integration. I run  
into a number of problems that I think need to be solved before rails- 
integration is ready for prime time.

First of all the "Adding web application" step is *extremely* slow on  
my machine (MacBook Pro). It takes about 20 mins to execute...  
(Regardless if this is the first or second time I do it.) We do have  
quite a large number of files in our project as all our gems are  
installed into the project and we have rails installed into vendor/ 
rails with svn:externals:

$ find . | wc -l
    89428

When I finally get the the server running and access it through the  
browser I get the following error:

2007-04-12 13:30:20.964:/ice:INFO:  Failed to load Rails: undefined  
method `alias_method_chain' for Test::Unit::Error:Class
         tmp/war/vendor/rails/activesupport/lib/active_support/ 
deprecation.rb:198:in `method_missing'
         tmp/war/vendor/rails/activesupport/lib/active_support/ 
deprecation.rb:198
         /tmp/jruby-rails-3215.tmp/lib/ruby/site_ruby/1.8/rubygems/ 
custom_require.rb:27

I think this is related to the fact that there is both a Rails gem  
and vendor/rails in the same war. We would very much like to keep  
using vendor/rails (it's very convenient as we can centrally upgrade  
Rails across quite a large team and a number of deployments). Maybe  
the plugin can auto-detect vendor/rails and not push in the rails gem  
if it's there?

If I remove vendor/rails I get a bit further but run into the  
following error instead:

2007-04-12 15:13:19.392:/ice:INFO:  Failed to load Rails: IO error --  
acts_as_versioned
         /tmp/jruby-rails-9438.tmp/lib/ruby/site_ruby/1.8/rubygems/ 
custom_require.rb:27:in `require'
         /tmp/jruby-rails-9438.tmp/lib/ruby/site_ruby/1.8/rubygems/ 
custom_require.rb:27:in `require'
         /Users/tirsen/Studios/ice/tmp/war/config/environment.rb:76
         <script>:0

acts_as_versioned is a file in the acts_as_versioned plugin which is  
actually there if I take a look:

$ ls tmp/war/vendor/plugins/acts_as_versioned/lib/
acts_as_versioned.rb.ast.ser

It seems this is related to the "compile_ruby true" and "keep_source  
false" settings.

If I remove those settings I get a bit further, but stop on this error:

2007-04-12 16:16:42.089:/ice:INFO:  Failed to load Rails: no such  
file to load -- /Users/tirsen/Studios/ice/tmp/war/config/../vendor/ 
plugins/javascript_test/lib/javascript_test
         file:/Users/tirsen/Studios/ice/tmp/war/WEB-INF/lib/jruby- 
complete-0.9.9-SNAPSHOT.jar!/META-INF/jruby.home/lib/ruby/site_ruby/ 
1.8/rubygems/custom_require.rb:27:in `require'
         file:/Users/tirsen/Studios/ice/tmp/war/WEB-INF/lib/jruby- 
complete-0.9.9-SNAPSHOT.jar!/META-INF/jruby.home/lib/ruby/site_ruby/ 
1.8/rubygems/custom_require.rb:27:in `require'

Looking into that directory confirms in tmp/war it is indeed empty,  
although it does exist in my normal source tree. For some reason it  
has not been copied. I don't actually need that plugin at runtime so  
I just delete it and try again. (It would be nice to specify a couple  
of patterns of stuff that should/should not be included into the war.  
Kinda like Ant fileset style "excludes".)

Ok, now after fiddling around with config/jetty.xml and setting up a  
JNDI datasource (nice recent addition!) I actually get it up and  
running.

I get the log in page, manage to log in...

And boom! An actual Rails error page saying (I've verified that this  
does not happen in Webrick with script/server where the app runs just  
fine):

can't convert Regexp into #<Class:01xbab7b2>
file:/Users/tirsen/Studios/ice/tmp/war/WEB-INF/lib/jruby- 
complete-0.9.9-SNAPSHOT.jar!/cgi.rb:344:in `gsub'
file:/Users/tirsen/Studios/ice/tmp/war/WEB-INF/lib/jruby- 
complete-0.9.9-SNAPSHOT.jar!/cgi.rb:344:in `escape'
generated code (/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/ 
actionpack-1.13.3/lib/action_controller/routing.rb:339):15:in  
`generate_raw'
generated code (/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/ 
actionpack-1.13.3/lib/action_controller/routing.rb:348):2:in `generate'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_controller/routing.rb:1261:in `send'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_controller/routing.rb:1261:in `generate'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_controller/url_rewriter.rb:104:in `each'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_controller/routing.rb:1263:in `generate'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_controller/url_rewriter.rb:104:in `rewrite_path'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_controller/url_rewriter.rb:69:in `rewrite'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_controller/base.rb:522:in `url_for'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_view/helpers/url_helper.rb:27:in `send'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_view/helpers/url_helper.rb:27:in `url_for'
/Users/tirsen/Studios/ice/tmp/war/WEB-INF/gems/gems/actionpack-1.13.3/ 
lib/action_view/helpers/url_helper.rb:75:in `link_to'
#{RAILS_ROOT}/app/views/layouts/application.rhtml:64:in  
`_run_rhtml_47app47views47layouts47application46rhtml'
... snip ...

I'm a bit stuffed about this error so I give up for today. At least I  
got all the way to the login page which is great!

Keep up all the good work and looking forward to any help you may be  
able to give!

Cheers,
Jon




----
New from ThoughtWorks: Mingle, an Agile project management application.
Mingle. Project Intelligence. Powerfully Simple.
More at http://studios.thoughtworks.com



_______________________________________________
Jruby-extras-devel mailing list
[EMAIL PROTECTED]
http://rubyforge.org/mailman/listinfo/jruby-extras-devel

Reply via email to