Quantcast

JRuby and Rails 2.3 String/Regex issue

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

JRuby and Rails 2.3 String/Regex issue

billgloff
Trying to port my Rails 2.3.14 app over to JRuby 1.6.7 from MRI Passenger but I currently get an error when trying to hit the rails app at any URL:

NoMethodError (undefined method `sub!' for nil:NilClass):
  org/jruby/RubyBasicObject.java:1656:in `method_missing'

I did some digging and found that error is coming from request.rb inside of ActionPack (line 369). Here is the method:

def path
  path = request_uri.to_s[/\A[^\?]*/]      
  path.sub!(/\A#{ActionController::Base.relative_url_root}/, '')
  path
end

request_uri returns the path so in this example "/".  Everything works as it should unless I run this in rails console using JRuby, then path is always nil.

JRUBY-HEAD or JRUBY 1.6.7   irb
>> "/".to_s[/\A[^\?]*/]
=> "/"    <------- YAY THIS WORKS LIKE MRI!

JRUBY-HEAD or JRUBY 1.6.7   ruby script/console
>> "/".to_s[/\A[^\?]*/]
=> nil     <------ WHY IS THIS NIL?

Anyone have any idea why only using jruby with my rails project does this regex code not work? any help or comments on this would be appreciated.

Thanks,
Bill Gloff
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: JRuby and Rails 2.3 String/Regex issue

billgloff
Figured out that it was an old Rails plugin called 'gibberish' that was causing my pain (case anyone cares).

-Bill
Loading...