package policy;
sub checkPolicyPrice {
my $policyCode = shift;
my $date = shift;
my $result = 159 if $policyCode =~ /ABC/ && $date =~ /31\/10\/2007/;
### NO MATCH FOUND
print "No value found for:policyCode=$policyCode date=$date" unless defined $result;
return $result;
}
####
#!/usr/bin/perl -w
# test-policy.pl
use SOAP::Lite;
print "what is your policyCode?";
$policyCode = ;
chomp $policyCode;
print "what is your date?";
$date = ;
chomp $date;
print SOAP::Lite
-> proxy('http://homepages.feis.herts.ac.uk/~123456/cgi-bin/policy.cgi')
-> uri('urn:policy')
-> checkPolicyPrice($policyCode,$date)
-> result;
####
#!/usr/bin/perl - w
# policy.cgi -policy SOAP handler
use SOAP::Transport::HTTP
SOAP::Transport::HTTP::CGI
-> dispatch_to('policy::(?:checkPolicyPrice)')
-> handle
;
####
$ perl test-policy.pl
what is your policyCode?ABC
what is your date?31/10/2007
500 Internal Server Error at test-policy.pl line 10