Hi There,
Has anybody installed DBI::Oracle on Strawberry Perl on Windows. Can anybody
send me steps to do that in a clear way, it will be deeply appreciated.
Actually I have strawberry Perl 5.10.1 installed on Windows and I am developed
a code to send XML request and get response which is working fine,
Now I need to access Oracle DB from the same script. However when I run that
code, I get below error, which looks like DBD Oracle needs to be installed. I
searched google and found that it comes by defaut with Active State Perl but
not with Strawberry Perl. So I installed Active State Perl but my XML request
code doesn't work in Active State Perl. So I reverted back to Strawberry Perl.
So can anybody tell me please how can I access oracle from Strawberry Perl.
Also I have attached my XML code here, if anybody have idea why it's not
working in Active State Perl.
ORACLE_HOME is C:\oracle\ora92;C:\oracle\product\11.2.0\client_1;
install_driver(Oracle) failed: Can't locate DBD/Oracle.pm in @INC (@INC
contains: C:/Vivek M/perlscripts/WorkSpace/.metadata/.plugins/org.epic.debug
C:/Vivek M/perlscripts/WorkSpace/Hello C:/strawberry/perl/lib
C:/strawberry/perl/site/lib C:\strawberry\perl\vendor\lib .) at (eval 3) line 3.
Perhaps the DBD::Oracle perl module hasn't been fully installed,
or perhaps the capitalisation of 'Oracle' isn't right.
Available drivers: ADO, DBM, ExampleP, File, Gofer, ODBC, Pg, Proxy, SQLite,
Sponge, mysql.
at C:/Vivek M/perlscripts/WorkSpace/Hello/Hello.pl line 6
Kind Regards,
Vivek Malhotra
ECommerce Test Services
t+44 (0) 113 202 4544
m+44 (0) 7596880793
Telefónica UK Limited
This electronic message contains information from Telefonica UK, Telefonica
Europe or Telefonica Digital which may be privileged or confidential. The
information is intended to be for the use of the individual(s) or entity named
above. If you are not the intended recipient be aware that any disclosure,
copying distribution or use of the contents of this information is prohibited.
If you have received this electronic message in error, please notify us by
telephone or email.
Switchboard: +44 (0)113 272 2000
Email: [email protected]
Telefonica UK Limited 260 Bath Road, Slough, Berkshire SL1 4DX Registered in
England and Wales: 1743099. VAT number: GB 778 6037 85
Telefonica Europe plc 260 Bath Road, Slough, Berkshire SL1 4DX Registered in
England and Wales: 05310128. VAT number: GB 778 6037 85
Telefonica Digital Limited 260 Bath Road, Slough, Berkshire SL1 4DX Registered
in England and Wales: 7884976. VAT number: GB 778 6037 85
// PERL Code
#!/usr/bin/perl -w
use strict;
use FileHandle;
use LWP::UserAgent;
use HTTP::Request::Common;
use HTTP::Headers;
# Unset $/, the Input Record Separator, to make <> give you the whole file at
once
local $/=undef;
#Open File Handle
open (MYFILE, 'C:\Vivek
M\perlscripts\WorkSpace\CreditCustomer\CreditCustomer.xml') or die "Could not
open file\n";
my $filecontents = <MYFILE>;
close(MYFILE);
print ("<<<<< REQUEST >>>>> \n\n");
print $filecontents . "\n";
# Certificates
#$ENV{HTTPS_CA_FILE} = 'C:\AccessGateway\soapuiopenssl.pem';
$ENV{HTTPS_CERT_FILE} = 'C:\AccessGateway\soapuiopenssl.pem';
$ENV{HTTPS_KEY_FILE} = 'C:\AccessGateway\soapuiopenssl.pem';
# Proxy_basic_auth
$ENV{HTTPS_PROXY_USERNAME} = 'testprepay_90';
$ENV{HTTPS_PROXY_PASSWORD} = 'Smart421';
print("\n\n");
print ("<<<<<<< RESPONSE >>>>>>> \n\n");
# Creating and firing the request
my $userAgent = LWP::UserAgent->new();
my $request = HTTP::Request->new(POST =>
'https://dmmlw-ldom-056:10001/axis2/services/CreditCustomerService_1_0');
#$request->header('Host' => "dmmlw-ldom-056");
$request->content_type("text/xml");
$request->content_length(length($filecontents));
$request->content($filecontents);
# Getting the Response
my $response = $userAgent->request($request);
# Verifying the response
if (!$response->is_error) {
print $response->content;
print "\n";
}
else {
print $response->error_as_HTML;
}