I have a patch that enables soap::lite to work out of the box with complex data types and wsdls.  I have tested this patch with the web services that I use, but it really needs to be tested by others also. 

How this patch works:

  I have added another hash to the top of the stub that's created when the wsdl is parsed.  This hash details how the complex data types are mapped into basic data types.  I also added the method fill_template which uses this hash to create the soap::data objects.
  I've also added the SOAP::Transport::HTTP::Client::get_basic_credentials method to the bottom of the stub.  This method is commented out, but enough people ask how to do this that I added it in.  Now anyone who needs to use basic auth can just uncomment the method and fill in the username and password.

  Since all of the data types are mapped at the top of the stub, I am not dynamically calling methods such as as_string and as_int.  Do we still need these methods if the aren't called from the stub?  I would love to hear the communities and especially byrnee's opinion on this.

Charlie Bowman
McClatchy Interactive