From: Saeed Bhuta on
Hi,

I am trying to consume a SOAP service. I don't know a lot about this
area but from what I have read, I have come up with the following code
so far;

require 'soap/wsdlDriver'

wsdl="http://realtime.nationalrail.co.uk/ldbws/wsdl.aspx"

driverFactory = SOAP::WSDLDriverFactory.new(wsdl)

p '>>>>>>>>here'
service = driverFactory.create_rpc_driver

board=service.GetDepartureBoard(4, 'ALN', '', '')

However I am getting the following error;
"ignored element: {http://www.w3.org/2001/XMLSchema}maxLength of
WSDL::XMLSchema::SimpleRestriction
ignored element: {http://www.w3.org/2001/XMLSchema}maxLength of
WSDL::XMLSchema::SimpleRestriction
ignored attr: {}default
/usr/lib/ruby/1.8/wsdl/import.rb:44:in `parse_attr': undefined method
`targetnamespace=' for #<WSDL::XMLSchema::Schema:0x..fdb72b8a6>
(NoMethodError)"

I'm assuming the error is related to the namespace?

Would sincerely appreciate it if someone could point me in the right
direction.

Saeed
--
Posted via http://www.ruby-forum.com/.

From: Tony Arcieri on
[Note: parts of this message were removed to make it a legal post.]

I've had lots and lots of problems with soap4r in the past and would most
certainly not recommend it. Try Savon instead:

http://github.com/rubiii/savon

On Tue, Jul 6, 2010 at 5:39 AM, Saeed Bhuta <saeed.bhuta(a)placr.co.uk> wrote:

> Hi,
>
> I am trying to consume a SOAP service. I don't know a lot about this
> area but from what I have read, I have come up with the following code
> so far;
>
> require 'soap/wsdlDriver'
>
> wsdl="http://realtime.nationalrail.co.uk/ldbws/wsdl.aspx"
>
> driverFactory = SOAP::WSDLDriverFactory.new(wsdl)
>
> p '>>>>>>>>here'
> service = driverFactory.create_rpc_driver
>
> board=service.GetDepartureBoard(4, 'ALN', '', '')
>
> However I am getting the following error;
> "ignored element: {http://www.w3.org/2001/XMLSchema}maxLength of
> WSDL::XMLSchema::SimpleRestriction
> ignored element: {http://www.w3.org/2001/XMLSchema}maxLength of
> WSDL::XMLSchema::SimpleRestriction
> ignored attr: {}default
> /usr/lib/ruby/1.8/wsdl/import.rb:44:in `parse_attr': undefined method
> `targetnamespace=' for #<WSDL::XMLSchema::Schema:0x..fdb72b8a6>
> (NoMethodError)"
>
> I'm assuming the error is related to the namespace?
>
> Would sincerely appreciate it if someone could point me in the right
> direction.
>
> Saeed
> --
> Posted via http://www.ruby-forum.com/.
>
>


--
Tony Arcieri
Medioh! A Kudelski Brand

From: Tim Becker on
The wsdl you presented is fairly short, I've found the easiest way to
implement small SOAP enpoints in ruby is to do this:

* Use Java or .NET Tools to create bindings out of the WSDL
* Make one or two sample calls.
* sniff the xml generated by those calls and use it to create
templates for ruby.

Unfortunately, SOAP is one of the most convoluted protocols the earth
has ever seen. The above may sound a bit TOO pragmatic, but you'll
save yourself a world of hurt.

-tim




On Tue, Jul 6, 2010 at 1:39 PM, Saeed Bhuta <saeed.bhuta(a)placr.co.uk> wrote:
> Hi,
>
> I am trying to consume a SOAP service. I don't know a lot about this
> area but from what I have read, I have come up with the following code
> so far;
>
> require 'soap/wsdlDriver'
>
> wsdl="http://realtime.nationalrail.co.uk/ldbws/wsdl.aspx"
>
> driverFactory = SOAP::WSDLDriverFactory.new(wsdl)
>
> p '>>>>>>>>here'
> service = driverFactory.create_rpc_driver
>
> board=service.GetDepartureBoard(4, 'ALN', '', '')
>
> However I am getting the following error;
> "ignored element: {http://www.w3.org/2001/XMLSchema}maxLength of
> WSDL::XMLSchema::SimpleRestriction
> ignored element: {http://www.w3.org/2001/XMLSchema}maxLength of
> WSDL::XMLSchema::SimpleRestriction
> ignored attr: {}default
> /usr/lib/ruby/1.8/wsdl/import.rb:44:in `parse_attr': undefined method
> `targetnamespace=' for #<WSDL::XMLSchema::Schema:0x..fdb72b8a6>
> (NoMethodError)"
>
> I'm assuming the error is related to the namespace?
>
> Would sincerely appreciate it if someone could point me in the right
> direction.
>
> Saeed
> --
> Posted via http://www.ruby-forum.com/.
>
>