Running arconnect
The arconnect utility (an unsupported utility) provides an easy way to directly test connectivity and connection parameters from the system that is intended to connect to the AR System server. The test confirms that the parameters are valid to connect to the server or will report an error message which can be used for further investigation.
Before you begin
- Download arconnect to the system that will use AR System API or CMDB API to connect with BMC Remedy AR System.
Go to https://communities.bmc.com/communities/docs/DOC-22886 for the arconnect.zip file. - Extract arconnect.zip to a new directory.
- Verify the Java Runtime Environment (JRE) is installed.
- Set JAVA_HOME to the full path to the Java directory.
To run arconnect the first time
- Launch a command prompt.
- Navigate to the directory where arconnect was extracted.
Run the following command:
arconnect -u <user> -p <password> -s <server> -t <tcp port>arconnect attempts to log on to the server, issues the ARGetServerInfo API call to retrieve the server name, and displays the results.
To run arconnect with additional properties
- Run arconnect from the command prompt the first time.
arconnect creates an arconnect.properties file with values provided on the command line, and stores the encrypted password. - Edit arconnect.properties with a text editor.
- Modify settings for AuthString, RetryInterval(Seconds), MaxRetries, and ServerInfo.
- Save the file.
- Run the arconnect command.
The arconnect.properties file
The arconnect.properties file contains the following settings:
- User — User name.
- Password — Encrypted password. Set this by running arconnect from the command line.
- ServerName — Name of the server that can reach the AR System server by using TCP/IP.
- TCPPort — TCP port.
- AuthString — Authentication string.
- RetryInterval(Seconds) — Time in seconds between AR System server connection attempts.
- MaxRetry — Number of attempts to connect to the AR System server.
- ServerInfo — List of comma-separated values for ServerInfoList without any space characters. The default value is 89, which will get ServerName. Values range from 1 to 351, as shown in the following table.
Server Info values
Option | ServerInfo | Value to investigate further |
---|---|---|
Admin-Only-Mode | 56 | A value of 1 indicates that only administrators and subadministrators can access the server. This prevents accounts that are not an administrator from accessing the server. |
Minimum-API-Version | 119 | A value of 0 means that there are no restrictions on the minimum API version of clients. If the value is greater than 0, arconnect can successfully connect, but an integration using an older BMC Remedy AR System version API may fail. |
Allow-Unqual-Queries | 20 | A value of 0 means that the user or integration must pass a qualification for all queries. This is a concern only if the integration has unqualified queries that run automatically. |
Max-Entries-Per-Query | 28 | A value greater than 0 means that the results set will be limited to the maximum number of entries. This is a concern only if the integration queries are for large amounts of data. |
Disable-Admin-Ops | 142 | A value of 1 means administrative operations are disabled on the server. This is a concern only if the client or integration must perform administrative operations. These typically occurs only during installation or the first connection. |
Disable-Client-Operation | 160 | A value other than null indicates that this setting is in use. It can be configured to prevent access by several known clients such as the mid tier or Developer Studio. |
Version | 4 | A value lower than the required version for the integration or client. BMC Remedy AR System is backward compatible through the API, so it is not a concern if it is a later version. |
Server License | 2 | A value of null indicates that the server is unlicensed and has limited capabilities that may impact functionality. |
Hostname | 48 | The host name of the system running the AR System server. Retrieving this value is sometimes useful for verifying which AR System server you are reaching with the server name provided. |
Full hostname | 49 | The fully qualified host name of the system running the AR System server. Retrieving this value is sometimes useful for verifying which AR System server you are reaching with the server name provided. |
Server Name | 89 | The server name configured for BMC Remedy AR System, which may be different from the host name. |
Server TPC/IP Port | 65 | A value other than 0 indicates that a specific port is configured. When this value is configured on the server, it is typically required to access the server because the server is not accessible via the portmapper, or not accessible via the portmapper outside the firewall. |
Using arconnect to identify client restrictions
Several BMC Remedy AR System ServerInfo settings affect whether a client can connect or the operations it can perform.
These options are configurable in AR System Administration Console > Server Information and documented in the ar.conf options. If arconnect is successful but other clients receive errors, arconnect can validate these additional options.
Example
An implementer wants to install a product that connects to BMC Remedy AR System. The implementer is provided with the server name, user name, and password for a development server for testing. The implementer downloads the arconnect utility to test whether the connection will work from the system that will be installed.
The implementer runs arconnect with the user name Demo, password NULL, server name myserver, and TCP Port 0.
If arconnect cannot connect, an error is given:
D:\ARConnect>java -classpath "arapi77_build002.jar;arutil77_build002.jar;lo
g4j-1.2.14;arconnectutil.jar" com.bmc.atrium.util.ARConnect -u Demo -p "" -s myserver -t 0
xxxxxxxxxxxxxxxxxxxxxxxx Start xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
AR Connection Attempt[1 of 1] Failed with Error =:
AR Error:[90]Cannot establish a network connection to the AR System server:myserver
Cannot Connect to AR in the given time Interval of: [20 secs]
xxxxxxxxxxxxxxxxxxxxxxxx END xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
D:\ARConnect>The implementer could investigate whether the server name resolves to the correct IP address and has connectivity to the system.
If the connection is successful, and the user name and password are accepted, the server name is returned: 89=myserver
D:\ARConnect>arconnect -u Demo -p "" -s myserver -t 0
D:\ARConnect>java -classpath "arapi77_build002.jar;arutil77_build002.jar;lo
g4j-1.2.14;arconnectutil.jar" com.bmc.atrium.util.ARConnect -u Demo -p "" -s myserver -t 0
xxxxxxxxxxxxxxxxxxxxxxxx Start xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
AR Connection Attempt[1] is Successful to Server:(89=myserver)
xxxxxxxxxxxxxxxxxxxxxxxx END xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
D:\ARConnect>The implementer verifies that no other restrictions are preventing clients from connecting, the AR Server version, and that AR Server is licensed and has full capabilities.
The implementer edits arconnect.properties to set ServerInfo=2,4,119.160 and runs arconnect from the command prompt:
D:\ARConnect>java -classpath "arapi77_build002.jar;arutil77_build002.jar;lo
g4j-1.2.14;arconnectutil.jar" com.bmc.atrium.util.ARConnect
-u<USER>
-p<PASSWORD>
-s<SERVER>
-t<PORT_NUMBER>.
For additional parameters check out the arconnect properties file
xxxxxxxxxxxxxxxxxxxxxxxx Start xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
----------Reading arconnect Properties File----------
AR Connection Attempt[1] is Successful to Server:{2=Server, 4=7.6.04 SP2 2011100
80614, 119=0, 160=null}
xxxxxxxxxxxxxxxxxxxxxxxx END xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
D:\ARConnect>The output shows that:
- The server is licensed.
- The version is 7.6.04 SP2.
- No clients are disabled.
- The minimum API version is specified.
Troubleshooting issues with arconnect
- If the following error is returned, verify that the Java environment is set up with JAVA_HOME environment variable set to Java 8 or later
"JAVA_HOME variable not set.Re-run after setting JAVA_HOME" - Delete the arconnect.properties file, and run arconnect from the command line to generate the file with default values.
- View the ARConnectlog4j.log file in the log folder for detailed information about failures.
The following error is returned when arconnect runs on a Windows system that has never run a Java API program:
WARNING: Trying to recreate Windows registry node SOFTWARE\Remedy\ARServer at ro
ot 0x80000002.
Mar 26, 2012 11:28:10 AM java.util.prefs.WindowsPreferences openKey
WARNING: Could not open windows registry node Software\JavaSoft\Prefs at root 0x
80000002. Windows RegOpenKey(...) returned error code 2.
Mar 26, 2012 11:28:10 AM java.util.prefs.WindowsPreferences closeKey
WARNING: Could not close windows registry node Software\JavaSoft\Prefs at root 0
x80000002. Windows RegCloseKey(...) returned error code 6.
java.io.IOException: Cannot run program "regedit": CreateProcess error=740, The
requested operation requires elevation[HKEY_LOCAL_MACHINE\SOFTWARE\Remedy\ARServer]
Resolve this by double-clicking RegKey.reg, which is located .
This error occurs when running any java APIprogram for the first time on Windows machine, when there is a missing Registry key.