well it turns out I was passing bad parameters to the service. weird
response though...

On 1/26/06, Dean Holdren <deanholdren / gmail.com> wrote:
> thanks, I've tried using ActionWebService::Client::SOAP, but I get the
> same error (pretty much), here's the version of the method within my
> Controller that used ActionWebService:
>
> def get_weather
>                lat = params[:lat]
>                lon = params[:lon]
>                 t = Time.now
>                 starter = Time.local(t.year,t.mon, t.day) + (24 *3600)
>                 ender = starter + 7 * 24 *3600
>
>                 params = WeatherParametersType.new({:maxt => false, :mint => false,
> :temp => true, :dew => false,
>                         :pop12 => false, :qpf => false, :sky => false, :snow => false,
>                         :wspd => false, :wdir => false, :wx => false, :waveh => false,
>                         :icons => false, :rh => false, :appt => true})
>
>                 soap_client = ActionWebService::Client::Soap.new(WeatherAPI,
> "http://www.weather.gov/forecasts/xml/SOAP_server/ndfdXMLserver.php")
>                 @dwml = soap_client.NDFDgen(lat, lon, 'time-series', starter, ender, params)
>                 @data = @dwml
>     end
>
> and I'm using these classes I've defined:
>
> class WeatherParametersType < ActionWebService::Struct
>     member :maxt, :boolean
>     member :mint, :boolean
>     member :temp, :boolean
>     member :dew, :boolean
>     member :pop12, :boolean
>     member :qpf, :boolean
>     member :sky, :boolean
>     member :snow, :boolean
>     member :wspd, :boolean
>     member :wdir, :boolean
>     member :wx, :boolean
>     member :waveh, :boolean
>     member :icons, :boolean
>     member :rh, :boolean
>     member :appt, :boolean
> end
>
>
> class WeatherAPI < ActionWebService::API::Base
>         api_method :NDFDgen, :expects => [[Float], [Float], [String], [Time],
> [Time], [WeatherParametersType]], :returns => [String]
> end
>
> The error stack trace:
>
> SOAP::HTTPStreamError (502: Bad Gateway):
>     c:/ruby-1.8.4/lib/ruby/1.8/soap/streamHandler.rb:200:in `send_post'
>     c:/ruby-1.8.4/lib/ruby/1.8/soap/streamHandler.rb:109:in `send'
>     c:/ruby-1.8.4/lib/ruby/1.8/soap/rpc/proxy.rb:170:in `route'
>     c:/ruby-1.8.4/lib/ruby/1.8/soap/rpc/proxy.rb:141:in `call'
>     c:/ruby-1.8.4/lib/ruby/1.8/soap/rpc/driver.rb:178:in `call'
>     c:/ruby-1.8.4/lib/ruby/1.8/soap/rpc/driver.rb:232:in `NDFDgen'
>     c:/ruby-1.8.4/lib/ruby/gems/1.8/gems/actionwebservice-1.0.0/lib/action_web_s
> ervice/client/soap_client.rb:61:in `perform_invocation'
>     c:/ruby-1.8.4/lib/ruby/gems/1.8/gems/actionwebservice-1.0.0/lib/action_web_s
> ervice/client/base.rb:15:in `method_missing'
>
> On 1/26/06, Anthony Elizondo <anthony.elizondo / gmail.com> wrote:
> > When you're playing with SOAP in Rails, I think you want to use
> > ActionWebService. See:
> > http://rails.rubyonrails.com/classes/ActionWebService/Client/Soap.html
> >
> > For Rails specific questions such as this, try the Rails mailing list,
> > at http://lists.rubyonrails.org/mailman/listinfo/rails or
> > http://www.ruby-forum.com/forum/3
> >
>
>