#!/usr/local/bin/perl -w use strict; use LWP::UserAgent; use LWP::Simple; use HTTP::Cookies; use HTTP::Request::Common; use HTTP::Headers; . . . sub do_LWPsetup { my $ref2browser = shift; $HTTP::Request::Common::DYNAMIC_FILE_UPLOAD = 1; #create an LWP browser object $$ref2browser = LWP::UserAgent->new(); #allow POST redirects push @{$$ref2browser->requests_redirectable}, 'POST'; #enable cookie support (dont know if this is really neccesary $$ref2browser->cookie_jar(new HTTP::Cookies ); return 1; } sub do_logon { my $userid = shift; my $password = shift; my $url = shift; my $browser = shift; my $loginurl = "$url/logon.jsp"; my $resp = $browser->post($loginurl, [ 'j_username' => $userid, 'j_password' => $password, 'submit' => 'Submit' ]); print "do_logon " . __FILE__ . "[" . __LINE__ ."] resp =[" . Dumper($resp) . "]\n"; if (do_errorcheck($resp,'Logon')) { print $resp->{'_msg'} . "\n"; return 0; } if ($debug_level > 0) { print "\nLogon Success: $userid"; } return 1; } . . . getUserPassword( \$user, \$password ); my $browser; my $rc = do_LWPsetup( \$browser ); if ($rc==0) { print "Failure: do_LWPStuff failed\n"; exit 1; } if (!do_logon( $user, $password, $url, $browser )) { print "Failure: do_logon failed\n"; exit 2; } else { print "Where in!\n"; }