OK, so according to all the docs and other hype, SOAP is simple and easy to use, right? Yeah, pull the other one, I've got bells on that one.

According to the docs I ought to be able to generate a module with simple

D:\Perl\bin\stubmaker.pl http://webservices.seek.com.au/marketsegment. +asmx?wsdl
and then call the methods with something like
use MarketSeg; print MarketSeg::GetMarketClassifiers('Main Exec');
Yeah, all those that believe this raise your hands! (Not just your right or left one, both. Yeah, that's more like it.)

I wont talk about all the things I tried (adding use SOAP::Lite +trace => [ all, -transport ]; on top of the test script was one of the first ones), here's the result. In the generated MarketSeg.pm I had to replace

-> call($method => map {@templates ? shift(@templates)->value($_ +) : $_} @_);
by
-> call( SOAP::Data->name($method)->attr({xmlns => 'http://webse +rvices.seek.com.au'}) => map {@templates ? shift(@templates)->value($ +_) : $_} @_);
and in the test script instead of the promised
print MarketSeg::GetMarketClassifiers('Main Exec');
by
my $params = SOAP::Data->new(name => 'marketSegment', value => 'Main E +xec'); print MarketSeg::GetMarketClassifiers($params);

Yeah, SOAP is cool. SOAP is simple. SOAP is just perfect. Maybe I'll live long enough to see it actually work.

For reference I have SOAP::Lite 0.60, ActivePerl v5.8.0 build 805 under Win2K SP4 Server.

Jenda
P.S.: If all job boards were as eager to adopt great new technologies and "carefully" design their integration specs as SEEK.com.au, we would not be delivering jobs to hundreds of boards, but to tens at most. Yeah, "we are the biggest job board in Australia and New Zealand and noone had any complaints against the integration yet." Sure, they only had to integrate with you.
P.P.S.: If anyone tries to make the stubmaker.pl and SOAP::Lite actually work with .Net SOAP servers either use a different service or make sure the parameter you send this one is "Main Exec" or one of the other defined market segments. The service crashes with an System.NullReferenceException exception if you try something that's not in the list. Go figure.


In reply to Of SOAP and men, aka "It's perfectly simple" they say by Jenda

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.