So I''ve read the Action Web Service bit of the documentation for a
while, searched around and asked on the IRQ channel and I just can''t
seem to get a simple Hello World type web service up and running with
AWS on Rails.
I have a file called hello_person_api.rb which looks like this:
class HelloPersonAPI < ActionWebService::API::Base
api_method :HelloName, :expects =>[:string], :returns => [:string]
end
I have put that in the /app/apis/ directory. I also have a file named
hello_person.rb which contains this:
class HelloPerson < ApplicationController
def HelloName( name )
return "Hello "+name;
end
end
I have put that in the /app/controllers/ directory.
As far as I can understand it, that ought to do something (although I
have no idea what path things are supposed to be on so they could be
in the wrong place) but when ask it to do anything I get this:
http://localhost:3000/HelloPerson
Routing Error
No route for path: "HelloPerson"
Failure reasons:
<ActionController::Routing::Route ":controller/service.wsdl" when
{:action=>"wsdl"}> failed because no controller found at subpath
helloperson
<ActionController::Routing::Route ":controller/:action/:id" ||
{:id=>nil, :action=>"index"}> failed because no controller
found at
subpath helloperson
Any ideas what else I need to do?
thanks,
-ben
I think you Controller needs to look like the following:
class HelloPerson < ApplicationController
wsdl_service_name ''HelloPerson''
def HelloName( name )
return "Hello "+name;
end
end
________________________________
From: rails-bounces@lists.rubyonrails.org on behalf of Ben Moxon
Sent: Tue 1/31/2006 11:37 AM
To: Rails@lists.rubyonrails.org
Subject: [Rails] Creating a web service with AWS
So I''ve read the Action Web Service bit of the documentation for a
while, searched around and asked on the IRQ channel and I just can''t
seem to get a simple Hello World type web service up and running with
AWS on Rails.
I have a file called hello_person_api.rb which looks like this:
class HelloPersonAPI < ActionWebService::API::Base
api_method :HelloName, :expects =>[:string], :returns => [:string]
end
I have put that in the /app/apis/ directory. I also have a file named
hello_person.rb which contains this:
class HelloPerson < ApplicationController
def HelloName( name )
return "Hello "+name;
end
end
I have put that in the /app/controllers/ directory.
As far as I can understand it, that ought to do something (although I
have no idea what path things are supposed to be on so they could be
in the wrong place) but when ask it to do anything I get this:
http://localhost:3000/HelloPerson
Routing Error
No route for path: "HelloPerson"
Failure reasons:
<ActionController::Routing::Route ":controller/service.wsdl" when
{:action=>"wsdl"}> failed because no controller found at subpath
helloperson
<ActionController::Routing::Route ":controller/:action/:id" ||
{:id=>nil, :action=>"index"}> failed because no controller
found at
subpath helloperson
Any ideas what else I need to do?
thanks,
-ben
_______________________________________________
Rails mailing list
Rails@lists.rubyonrails.org
http://lists.rubyonrails.org/mailman/listinfo/rails
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/ms-tnef
Size: 5196 bytes
Desc: not available
Url :
http://wrath.rubyonrails.org/pipermail/rails/attachments/20060131/804859fc/attachment.bin
Thanks for this. In the end, with a lot of help from folk on IRQ and random voodoo experimentation I got something up and running, which I should be able to work with a bit. My main problem was that although I had updated to the latest version of Rails my version of AWS was a bit old and didn''t work very well. I''ve added a howto for a basic web service to the rails Wiki so anyone else in my state of distress should hopefully be able to sort themselves out... -ben On 1/31/06, Ron DiFrango <rdifrango@captechventures.com> wrote:> I think you Controller needs to look like the following: > > class HelloPerson < ApplicationController > > wsdl_service_name ''HelloPerson'' > > def HelloName( name ) > return "Hello "+name; > end > end > > > ________________________________ > > From: rails-bounces@lists.rubyonrails.org on behalf of Ben Moxon > Sent: Tue 1/31/2006 11:37 AM > To: Rails@lists.rubyonrails.org > Subject: [Rails] Creating a web service with AWS > > > > So I''ve read the Action Web Service bit of the documentation for a > while, searched around and asked on the IRQ channel and I just can''t > seem to get a simple Hello World type web service up and running with > AWS on Rails. > > I have a file called hello_person_api.rb which looks like this: > > class HelloPersonAPI < ActionWebService::API::Base > api_method :HelloName, :expects =>[:string], :returns => [:string] > end > > I have put that in the /app/apis/ directory. I also have a file named > hello_person.rb which contains this: > > class HelloPerson < ApplicationController > > def HelloName( name ) > return "Hello "+name; > end > end > > I have put that in the /app/controllers/ directory. > > As far as I can understand it, that ought to do something (although I > have no idea what path things are supposed to be on so they could be > in the wrong place) but when ask it to do anything I get this: > > http://localhost:3000/HelloPerson > > Routing Error > > No route for path: "HelloPerson" > > Failure reasons: > <ActionController::Routing::Route ":controller/service.wsdl" when > {:action=>"wsdl"}> failed because no controller found at subpath > helloperson > <ActionController::Routing::Route ":controller/:action/:id" || > {:id=>nil, :action=>"index"}> failed because no controller found at > subpath helloperson > > Any ideas what else I need to do? > > thanks, > > -ben > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails > > > > _______________________________________________ > Rails mailing list > Rails@lists.rubyonrails.org > http://lists.rubyonrails.org/mailman/listinfo/rails > > >