Now invoke methods on our Perl 'bean' using a Java bean patterned API; i.e. we can invoke setColor() and setCountInStock() from Perl.
use Arachna::SOAP::Vector;
use SOAP::Lite
  service => 'http://localhost:8080/fogkids/services/ApparelItem?wsdl';
use ApparelItemBean;

my $item = lookup(1024);
print 'lookup(1024) got type: ', ref $item, "\n";
dump_bean($item);
# now treat it the way a Java programmer would a bean...
$item->setColor('Black'); # I want to paint it black
$item->setCountInStock(10000);
print "after setColor(..), setCountInStock(..) invoked\n";
dump_bean($item);

sub dump_bean {
    my $bean = shift;
    while (my($k,$v)=each %$bean) {
        print "\t$k => $v\n";
    }
}
Slide 48 of 58 Contents
  1 |   2 |   3 |   4 |   5 |   6 |   7 |   8 |   9 | 10
11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20
21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30
31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40
41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50
51 | 52 | 53 | 54 | 55 | 56 | 57 | 58
www.arachna.com > Educational Resources > Tutorials > O'Reilly Open Source Conference (2002) > Exchanging Objects and Messages With SOAP

spidaman
© 2002-2009 Ian Kallen | Copyright Notice