#!/usr/bin/env perl use SOAP::Lite; my $wsdlurl = "http://bibiserv.techfak.uni-bielefeld.de/wsdl/DIALIGN.wsdl"; if(!defined $ARGV[0]) { print "usage: request_orig.pl \n"; exit 1; } my $sequences = ""; open(FILE, $ARGV[0]); while (){ $sequences .= $_; } close FILE; print "Submitting your request ...\n"; my @params = ("threshold", SOAP::Data->type(int => "0"), "stars", SOAP::Data->type(int => "5")); my $result = SOAP::Lite->service($wsdlurl) ->on_fault(sub {soapFaultHandler(@_)}) ->request_orig($sequences,\@params); print "got id: '$result'\n"; sub soapFaultHandler { my($soap, $res) = @_; if (ref $res) { my $detail = $res->faultdetail; if(defined($detail->{"hobitStatuscode"})) { print $detail->{"hobitStatuscode"}->{"description"}; print "(".$detail->{"hobitStatuscode"}->{"statuscode"}.")\n"; } else { print "Servlet Error - no Hobit Statuscode\n"; } } else { print "HTTP Layer Error: "; print $soap->transport->status."\n"; } exit 1; }