Environment
Situation
By default it is not possible to set the database port during the installation of IDM Role Mapping Administrator. This means if
someone wanted to use a single machine for both a staging sandbox as well as a production server, they would not be able to.
Currently when you start the 2nd instance of the IDM Role Mapping Administrator application you get
the following error at startup:
[Server@bf2d5e]: [Thread[HSQLDB Server @bf2d5e,5,main]]:
run()/openServerSocket():
java.net.BindException: Address already in use
Resolution
To customize the embedded DB listening port to avoid conflicting use the following steps:
1. Go to Role Mapping Administrator's installation folder, find
tomcat/bin/catalina.sh and open it in an editor.
2. Find the section of "#Start the HSQL Database" where you can see the
following command which invokes the DB server:
"$_RUNJAVA" -cp "$CATALINA_BASE/lib/hsqldb.jar" org.hsqldb.Server -database.0
file:$CATALINA_BASE/db/mydb -dbname.0 idmrmap
3. Insert the following option to the command right before "-database.0":
-port <customized_port_number>
4. Save and close the file.
5. find tomcat/webapps/IDMRMAP/WEB-INF/classes/hibernate.cfg.xml and open it in
an editor.
6. find the following line:
<property name="connection.url">
7. modify the value of the property from:
jdbc:hsqldb:hsql://localhost/idmrmap
to
jdbc:hsqldb:hsql://localhost:<customized_port_number>/idmrmap
8. Save and close the file