본문 바로가기
Ruby On Rails

'load_missing_constant': uninitialized constant ActionController::AbstractRequest (NameError)

by 돌프홍 2010. 1. 8.

 

 => Booting Mongrel
=> Rails 2.3.5 application starting on http://127.0.0.1:3002
C:/Ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:440:in `load_missing_constant': uninitialized constant ActionController::AbstractRequest (NameError)
       from C:/Ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:80:in `const_missing'
       from C:/Documents and Settings/MyCom/My Documents/Aptana RadRails Workspace/redmine/vendor/plugins/actionwebservice/lib/action_web_service/protocol/abstract.rb:74
       from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
       from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
       from C:/Ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require'
       from C:/Ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:521:in `new_constants_in'
       from C:/Ruby/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require'
       from C:/Documents and Settings/MyCom/My Documents/Aptana RadRails Workspace/redmine/vendor/plugins/actionwebservice/lib/action_web_service/protocol.rb:1
        ... 32 levels...
       from C:/Ruby/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:31:in `require'
       from ./script/server:3
       from -e:2:in `load'
       from -e:2

1. redmine v0.6 -> v0.9.0 migration 시에 문제 발생.

v0.6 과 v0.9.0 코드를 비교.
/vendor/plugins/actionwebservice
/vendor/plugins/gloc-1.1.0
두 개의 디렉토리 삭제

2. session string 값을 설정한다.

cmd > rake secret
( 경로 - 해당 rails project 디렉토리 )
3. session_store.rb 생성하여 session key와 secret 값을 setting.

 ActionController::Base.session = {
  :key         => '_redmineqi_redmine',     // key 값은 임의로 생성한다.
  :secret      => '7d9918ertyuiokuyd7419a66cace8a952f082dae14ba028e678igi32qwd578w3579kh7493410e0d3e1da5b06821'
}

4. database.yml 에서 사용할 DB 환경 설정.
5. server start.
6. http://localhost:3000 접속하여 정상작동을 확인.