Beefy Boxes and Bandwidth Generously Provided by pair Networks
go ahead... be a heretic
 
PerlMonks  

good material on SOAP::lite + where to find

by andyfives (Initiate)
on Apr 30, 2007 at 10:11 UTC ( [id://612728]=perlquestion: print w/replies, xml ) Need Help??

andyfives has asked for the wisdom of the Perl Monks concerning the following question:

Hello oh wise ones I am very new to raw perl programming but have been using the TT2 for a while and would like advice on how to tackle building a web service that can be used to aid me in my project. With our TT2 we have custom/pref files containing text, language settings that control the basic running of our website. These are stored in files in a hash table like structure. we would like our users in ecommerce to be able to amend simple parts of this through a GUI tool that uses SOAP. THis will hopefully allow us to expand on the initial requirements.
%SKYLIGHTS_PREFS = ( ############################################### ############################################### ##### STERLING SPECIAL SETTINGS ##### ############################################### ############################################### # Forces the customer to put in their flyme PNR on the contact pag +e! STERLING_FLYME_ENABLED => "false",
etc... this is where I start to get confused.. I can output the hash data using SOAP::lite if i setup a server client type setup...
sub getHash { my $self = shift; #my ($strxml) = $_[0]; my %params = (ref $_[0] eq 'HASH') ? %{$_[0]} : @_; # important adding new line char to reqXML my $reqXML = $params{SkylightsHash}; print "Content-type: text/plain\n\n"; print SOAP::Lite -> uri('http://sterlingSOAP/Demo') -> proxy('http://localhost/skylights/cgi-bin/sterlingSOAP.cgi') -> hi(SOAP::Serializer->serialize($reqXML)) -> result(), "\n"; };
But.. I want the user to work on this type of structure make a change to the text contained and send it back to the server and make a change to the actual pref data that is located in a file. HOw do I start? I am a little lost and the documentation on SOAP is way too much. Thank you in advance... BTW can anyone recommend any good documentation on SOAP::lite and web services in general?

Replies are listed 'Best First'.
Re: good material on SOAP::lite + where to find
by Herkum (Parson) on Apr 30, 2007 at 11:55 UTC
Re: good material on SOAP::lite + where to find
by lin0 (Curate) on Apr 30, 2007 at 12:46 UTC

    Hi andyfives,

    Welcome to PerlMonks

    There is a group of articles from IBM developerWorks that you might find useful:

    • Ask the magic eight ball: "In this article, Doug Tidwell takes a simple piece of code, deploys it as a Web service, and writes a few clients for it. Next, he discusses how to create a description of the Web service and how to store that description in a registry and on a Web server."
    • Deploying Web services with WSDL: Part 1: "In the Deploying Web services with WSDL series, Bilal will explore all major technical aspects of creating, deploying, and publishing Web services -- from Web Services Markup Language (WSDL), to Simple Object access Protocol (SOAP), and Universal Description Discovery and Integration (UDDI) registries. Part 1 focuses on WSDL authoring"
    • Deploying Web services with WSDL, Part 2: Simple Object Access Protocol (SOAP): "Learn SOAP syntax and deploy WSDL applications using SOAP"
    • Developing Web services, Part 3: SOAP interoperability. "In this article, Bilal will start with a discussion of the evolution of SOAP, present a list of major SOAP interoperability issues and their details, and create a guideline to develop better interoperable Web services. Bilal will also cover the details of using datatypes in SOAP."
    • Web services insider, Part 1: Reflections on SOAP. In this article, James Snell starts a series of post aimed at "taking a quick look back at just how far Web services have come, what the current playing field looks like in terms of tool availability, and offering some insight into just how far we have to go in order to make this exciting new set of technologies viable and competitive."

    In addition, you might want to try the Super Search feature of PerlMonks to look for answers to similar questions to the ones you might have.

    I hope this helps.

    Cheers,

    lin0
Re: good material on SOAP::lite + where to find
by erroneousBollock (Curate) on May 01, 2007 at 06:37 UTC
    I have observed the quality and coverage of documentation on SOAP (in general for Perl) and SOAP::Lite to be poor...
    but it's not like I can complain, because I haven't done anything to help fix that problem :)

    The cookbook examples in the SOAP::Lite documentation are acceptable for quick reference, but don't adequately explain what problems some of the examples solve.

    I found that having a more general understanding the SOAP (protocol, encodings, document types, envelope parameters, headers, transports and attachments) to be beneficial.

    When you've read as much as you can stomach about SOAP generally (I recommend the articles linked at wikipedia) *then* look at the SOAP::Lite documentation. You'll be able to understand the SOAP::Lite documentation more readily at that point.

    On the server side, SOAP::Lite does nothing for you in terms of WSDL generation, so look at Pod::WSDL, which will allow you to specify type, arity, collection and structure information that cannot be gleaned automatically from perl5 code. It even automatically turns your Perl classes (with appropriate POD) into complex type definitions which can be referenced in the WSDL-related POD of your service proper.

    On the client side, look no further than SOAP::WSDL. It immensely simplifies the construction of complex soap values (for the most part, it's automatic), and does a very good job of creating proxies for the methods exposed by a service.

    Hope that helps.
    -David
      Thank you all for your comments. I will take all comments on board and have a good read. I will update this again when I have discovered a little more about the mysteries of SOAP and Perl.... Cheers

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlquestion [id://612728]
Approved by marto
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others chilling in the Monastery: (3)
As of 2024-04-24 23:10 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found