views:

119

answers:

3

How to implement Web Services in Perl?

A: 

SOAP::Lite

Dean J
SOAP::Lite is the wrong thing to use for new projects. It's buggy and has odd compatibility problems. Use XML::Compile::SOAP instead.
brian d foy
I haven't used XML::Compile::SOAP, and am really interested to give it a go. Meanwhile, SOAP::Lite's been functioning fine in the projects I've used it for, although I might have had to debug and design around it's issues without realizing it.
Dean J
+2  A: 

Programming Web Services with Perl is a bit dated (2002?) but still should be read.

It also has a companion web site.

DVK
+8  A: 

I prefer XML::Compile::SOAP. I admit that I am not a heavy SOAP user, but I have heard from heavy SOAP users on IRC that XML::Compile::SOAP is a dream come true for them.

The other day, I was writing a small script to extract data from a SOAP-accessible database. I tried XML::Compile::SOAP, and the whole data-extraction function ended up being five lines! One line to load the WSDL, one line to compile the function I wanted to call, one line to call that function (the Perl argument was automatically validated against the WSDL specification, and converted from native Perl structures to the weird Java structures on the other end), and one line to munge the result a bit. After hearing people complain about how hard SOAP is, I couldn't have been happier.

JMHO.

jrockway