#!/usr/bin/perl -w use strict; use SOAP::Transport::HTTP; SOAP::Transport::HTTP::Daemon->new(LocalPort => 3004) ->dispatch_to('My::Soapy')->handle; package My::Soapy; sub testy { return "happy!"; } #### #!/usr/bin/perl -w use strict; use SOAP::Lite; use Tk; my $main = MainWindow->new; my $button = $main->Button(-text => 'go!', -command => \&get); $button->pack; MainLoop; sub get { print "got: " . SOAP::Lite->uri('http://tako:3004/My/Soapy') ->proxy('http://tako:3004')->testy()->result . $/; }