Pluginizing ActionWebService to work on Edge rails
June 5th, 2007 | 0 comments
I recently updated a project at work to Edge rails to take advantage of ActiveResource - as a result, ActionWebService went away. We've known for a long time AWS was on it's way out, but I was hoping a plugin version would be created prior to it's removal - which in all fairness may still be the case, Edge rails is not exactly a release.
ActiveResource/REST is much nicer, but we needed SOAP... So I set about making it work on Edge. Turns out this is pretty easy - go into your plugins directory, and svn export actionwebservice:
1 2 |
cd myproject/vendor/plugins $ svn export http://svn.rubyonrails.org/rails/trunk/actionwebservice/ actionwebservice |
Then go into the directory and create a init.rb - this needs to do three things - require AWS, fix the load paths, and require the test helpers when in test environment.
1 2 3 4 5 6 7 |
require 'action_web_service' # These need to be in the load path for action_web_service to work Dependencies.load_paths += ["#{RAILS_ROOT}/app/apis"] # AWS Test helpers require 'action_web_service/test_invoke' if ENV['RAILS_ENV'] == 'test' |
That's it! I did find another solution on how to hack it back in, but I decided to turn it into a plugin instead.