我想通過Warbler生成的war文件將Rails應用程序部署到Tomcat。戰爭文件部署到沒有任何問題/ myproject的護欄貴,但是,當我嘗試在應用程序訪問一個頁面,我越來越:上下文沒有被warbler和tomcat正確設置
ArgumentError: wrong number of arguments (1 for 0)
send at org/jruby/RubyKernel.java:2097
Railtie at /home/myproject/apache-tomcat-7.0.22/webapps/myproject-rails-gui/WEB-INF/gems/gems/actionpack-3.0.10/lib/action_controller/railtie.rb:54
當它試圖設置relative_url_root它的失敗。還有其他堆棧溢出文章(正確地)指出不建議使用relative_url_root,而應該設置RAILS_RELATIVE_URL_ROOT環境變量。
module ActionController
class Base
# Deprecated methods. Wrap them in a module so they can be overwritten by plugins
# (like the verify method.)
module DeprecatedBehavior #:nodoc:
def relative_url_root
ActiveSupport::Deprecation.warn "ActionController::Base.relative_url_root is ineffective. " <<
"Please stop using it.", caller
end
def relative_url_root=
ActiveSupport::Deprecation.warn "ActionController::Base.relative_url_root= is ineffective. " <<
"Please stop using it.", caller
end
我沒有任何運氣搞清楚如何做到這一點使用鶯和Tomcat,雖然。有什麼建議麼?對於它的價值,當我在根上下文中運行應用程序時,該應用程序工作正常。
我的環境:
- 鶯1.3.2
- 的Tomcat 7.0.22
- 的JRuby 1.6.5
- 的Rails 3.0.10
我也可以使用[trinidad](https://github.com/trinidad/trinidad)獲得相同的行爲。 – Marc
這裏的問題與rails 3.1.1相同。 –
作爲一個臨時的解決方法,我已經在錯誤發生的第54行之前添加了'options.delete(:relative_url_root)'到** actionpack-3.0.10/lib/action_controller/railtie.rb **。 – Marc