gkralik / php7-sapnwrfc

SAP NW RFC SDK extension for PHP 7.3+ & PHP 8
https://gkralik.github.io/php7-sapnwrfc
MIT License
89 stars 35 forks source link

Could not open connection #70

Closed coresh closed 5 years ago

coresh commented 5 years ago

Could not open connection (SAP NW RFC SDK 7.20 and 7.50)

connection credentials: correct

$ php -f sap2.php

PHP Fatal error:  Uncaught SAPNWRFC\ConnectionException: Could not open connection in .sap2.php:23
Stack trace:
#0 /var/www/html/sap2.php(23): SAPNWRFC\Connection->__construct(Array)
#1 {main}
  thrown in /var/www/html/sap2.php on line 23
$ php -i | grep -A5 -B5 sap

sapnwrfc

sapnwrfc support => enabled
Version => 1.3.0
SAP NW RFC SDK => 7500.0.3
$ cat /etc/php/7.2/cli/conf.d/20-sapnwrfc.ini
extension=sapnwrfc.so
$ ls -laR /usr/sap/nwrfcsdk
/usr/sap/nwrfcsdk:
total 28
drwxrwxr-x 7 www-data www-data 4096 Feb  7 14:59 .
drwxrwxr-x 4 www-data www-data 4096 Feb 28 11:10 ..
drwxrwxr-x 2 www-data www-data 4096 Feb  3 19:26 bin
drwxrwxr-x 2 www-data www-data 4096 Feb  3 19:06 demo
drwxrwxr-x 2 www-data www-data 4096 Feb  7 14:59 doc
drwxrwxr-x 2 www-data www-data 4096 Feb  3 19:06 include
drwxrwxr-x 2 www-data www-data 4096 Feb  3 19:29 lib

/usr/sap/nwrfcsdk/bin:
total 84
drwxrwxr-x 2 www-data www-data  4096 Feb  3 19:26 .
drwxrwxr-x 7 www-data www-data  4096 Feb  7 14:59 ..
-rwxrwxr-x 1 www-data www-data 46738 Feb  3 19:26 rfcexec
-rwxrwxr-x 1 www-data www-data 27095 Feb  3 19:26 startrfc

/usr/sap/nwrfcsdk/demo:
total 148
drwxrwxr-x 2 www-data www-data  4096 Feb  3 19:06 .
drwxrwxr-x 7 www-data www-data  4096 Feb  7 14:59 ..
-rw-rw-r-- 1 www-data www-data  3890 Feb  3 19:06 companyClient.c
-rw-rw-r-- 1 www-data www-data  1368 Feb  3 19:06 readme.txt
-rw-rw-r-- 1 www-data www-data 30789 Feb  3 19:06 rfcexec.cpp
-rw-rw-r-- 1 www-data www-data  1057 Feb  3 19:06 rfcexec.h
-rw-rw-r-- 1 www-data www-data 29631 Feb  3 19:06 sapnwrfc.ini
-rw-rw-r-- 1 www-data www-data 13354 Feb  3 19:06 sflightClient.c
-rw-rw-r-- 1 www-data www-data  6475 Feb  3 19:06 sso2sample.c
-rw-rw-r-- 1 www-data www-data 10230 Feb  3 19:06 startrfc.cpp
-rw-rw-r-- 1 www-data www-data   739 Feb  3 19:06 startrfc.h
-rw-rw-r-- 1 www-data www-data  9930 Feb  3 19:06 stfcDeepTableServer.c
-rw-rw-r-- 1 www-data www-data 10090 Feb  3 19:06 ThroughputSample.c

/usr/sap/nwrfcsdk/doc:
total 32
drwxrwxr-x 2 www-data www-data  4096 Feb  7 14:59 .
drwxrwxr-x 7 www-data www-data  4096 Feb  7 14:59 ..
-rw-rw-r-- 1 www-data www-data  6244 Feb  3 19:06 licenses.txt
-rw-rw-r-- 1 www-data www-data 16025 Feb  5 13:57 release_notes.txt

/usr/sap/nwrfcsdk/include:
total 580
drwxrwxr-x 2 www-data www-data   4096 Feb  3 19:06 .
drwxrwxr-x 7 www-data www-data   4096 Feb  7 14:59 ..
-rw-rw-r-- 1 www-data www-data  59343 Feb  3 19:06 sapdecf.h
-rw-rw-r-- 1 www-data www-data 272187 Feb  3 19:06 sapnwrfc.h
-rw-rw-r-- 1 www-data www-data 217816 Feb  3 19:06 sapuc.h
-rw-rw-r-- 1 www-data www-data  24993 Feb  3 19:06 sapucx.h

/usr/sap/nwrfcsdk/lib:
total 50416
drwxrwxr-x 2 www-data www-data     4096 Feb  3 19:29 .
drwxrwxr-x 7 www-data www-data     4096 Feb  7 14:59 ..
-rw-rw-r-- 1 www-data www-data 20788500 Feb  3 19:10 libicudata.so.50
-rw-rw-r-- 1 www-data www-data    84766 Feb  3 19:11 libicudecnumber.so
-rw-rw-r-- 1 www-data www-data 12379712 Feb  3 19:10 libicui18n.so.50
-rw-rw-r-- 1 www-data www-data  8705216 Feb  3 19:10 libicuuc.so.50
-rw-rw-r-- 1 www-data www-data  8584008 Feb  3 19:29 libsapnwrfc.so
-rw-rw-r-- 1 www-data www-data  1060965 Feb  3 19:11 libsapucum.so
$ ldconfig -p | grep sap
    libsapucum.so (libc6,x86-64) => /usr/sap/nwrfcsdk/lib/libsapucum.so
    libsapnwrfc.so (libc6,x86-64) => /usr/sap/nwrfcsdk/lib/libsapnwrfc.so
    libicuuc.so.50 (libc6,x86-64) => /usr/sap/nwrfcsdk/lib/libicuuc.so.50
    libicui18n.so.50 (libc6,x86-64) => /usr/sap/nwrfcsdk/lib/libicui18n.so.50
    libicudecnumber.so (libc6,x86-64) => /usr/sap/nwrfcsdk/lib/libicudecnumber.so
    libicudata.so.50 (libc6,x86-64) => /usr/sap/nwrfcsdk/lib/libicudata.so.50
    libgssapi_krb5.so.2 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libgssapi_krb5.so.2
    libgssapi.so.3 (libc6,x86-64) => /usr/lib/x86_64-linux-gnu/libgssapi.so.3
<?php
use SAPNWRFC\Connection as SapConnection;
use SAPNWRFC\Exception as SapException;

try {

$config = [
    'ashost'    => '172.16.201.151',
    'sysnr'     => '00',
    'client'    => '100',
    'user'      => 'user',
    'passwd'    => 'pw!',
    'passwd'    => 'pw!',
    'lang'      => 'en',
    'codepage ' => '1100',
    'level'     => 3,
    'trace'     => '3'
];

    $c = new \SAPNWRFC\Connection($config);

    $f = $c->getFunction('Z_TEST_FUNCTION');
    $result = $f->invoke([
        'CHAR1' => 'A',
        'TABL' => [
            ['INT4' => 1, 'CHAR4' => 'NOPE'],
        ]
    ]);

    var_dump($result);
} catch(\SAPNWRFC\ExceptionInterface $ex) {
    // do something
}
?>

Each execution:

Could not open connection

gkralik commented 5 years ago

Check the generated trace file. It might give you a hint. Also note that SDK 7.50 might still cause problems, it hasn't been tested thoroughly. You might want to try SDK 7.20 also.