Error: 'Sd_ApiInit Error Failed to Connect to the serv DB /path/ace/data/sdserv'
2 years ago
Originally Published: 2001-08-17
Article Number
000056341
Applies To
RSA ACE/Server
RSA Authentication Manager 6.0
Microsoft Windows 2000
Microsoft Windows Server 2003
RSA ACE/Server Administration API
test.tcl
Sample program
Issue
Error: "Sd_ApiInit Error Failed to Connect to the serv DB /path/ace/data/sdserv"
Sample TCL script does not run on RSA ACE/Server
Error: "Can't read "env(VAR_ACE)": no such element in array" when making Sd_ApiInit call
Cause
RSA ACE/Server database brokers are not running when calling Sd_ApiInit
The environment variable VAR_ACE is not set
Resolution
For Windows platforms, the RSA ACE/Server Administration API does not require the environment variables to be set. However, if you are passing parameters to the function calls that must evaluate the environment variable, you must ensure it is set.

For Sd_ApiInit, you don't have to specify the exact location of the database. You can call it using the following syntax:

    Sd_ApiInit "" "" 1

This will use the default location of the ACE/Server databases.

NOTE: Remember that the ACE/Server brokers must be running. In situations where the brokers are not running, you would use the Sd_ApiInitSingle call and, as the name suggests, must connect in single-user mode.

In the example of getting this error running test.tcl, simply set a variable called VAR_ACE before running TCL, for example

        C:\ace\utils\tcl\BIN>set VAR_ACE=c:\ace\data

        C:\ace\utils\tcl\BIN>tcl-sd
        % source test.tcl
        Connected User: aceadmin on Host:ace1.rsa.net
        ace1.rsa.net
        dc1.rsa.net
        webserver.rsa.net

        C:\ace\utils\tcl\BIN>