Troubleshooting
Problem
Attampts to start IBM Rational Directory Server (RDS) Apache results in error: " org.apache.directory.shared.ldap.exception.LdapConfigurationException: Failed to bind an LDAP service (1636) to the service registry".
Symptom
When you start Rational Directory Server (RDS) using the provided script or a batch file the following errors are displayed:
Exception in thread "main"
org.apache.directory.shared.ldap.exception.LdapConfigurationException: Failed to bind an LDAP service (1636) to the service registry.
[Root exception is java.net.BindException: Address already in use: bind]
at org.apache.directory.server.ldap.LdapService.startLDAP0(LdapService.java:422)
at org.apache.directory.server.ldap.LdapService.start(LdapService.java:321)
at org.apache.directory.server.configuration.ApacheDS.startup(ApacheDS.java:143)
at org.apache.directory.server.Service.init(Service.java:86)
at org.apache.directory.server.UberjarMain.main(UberjarMain.java:56)
Caused by: java.net.BindException: Address already in use: bind
In this example the port is 1636. This number may be different in your configuration.
Cause
RDS' internal LDAP server (or another component) cannot be started because the "address is already in use". This most likely refers to the port. The most common cause is that you've set up your RDS to use ports that are already in use.
Environment
This Technote applies to the following RDS :
- Both Windows and UNIX
- Any installation mode (OS mode, corporate LDAP mode, Standalone mode)
- RDS Apache (the symptoms for the same cause haven't been studied for RDS Tivoli)
- Versions 5.1, 5.1.1.
Diagnosing The Problem
Open the RDS file "server.xml" and double-check every field referring to the ports that will be in use.
This includes :
- The port used by RDS' internal LDAP server (Apache DS)
- The port used by RDS' web-based interface
You should find 3 ports entries in "server.xml".
The default values would be : 8080, 8015, 8009.
You can check if these ports are in use on your system by using the universal command below:
netstat -na
On UNIX, use "netstat -na | grep 8080" - without the quotes - to immediately filter the results.
Resolving The Problem
Use netstat to determine the current state of the port. See if the RDS server is already running on this port. If you want to you can change the ports values: TechNote 1410166: How to change the Webserver port number for Rational Directory Server 5.0
You may have to restart your machine to free up the port.
Was this topic helpful?
Document Information
Modified date:
13 November 2019
UID
swg21508671