No suitable driver found when testing a PostgreSQL database collector in RSA Identity Governance & Lifecycle
Originally Published: 2015-11-30
Article Number
Applies To
RSA Version/Condition: 6.9.1, 7.0.x, 7.1.x, 7.2.x, 7.5.x, 8.0
Platform: JBoss/WildFly
Issue
After creating a collector of DB Type: PostgreSQL in RSA Identity Governance & Lifecycle to collect data from a PostgreSQL database, the following errors are displayed in the user interface when testing the collector depending on your RSA Identity Governance & Lifecycle version.
RSA Identity Governance & Lifecycle 7.1.1, 7.2.x, 7.5.x, 8.0
java.sql.SQLException:No suitable driver found for jdbc:postgresql://
RSA Identity Governance & Lifecycle 7.0.x and 7.1.0
java.sql.SQLException:No suitable driver found for jdbc:jdbc:postgresql://
RSA Identity Governance & Lifecycle 6.9.1
java.sql.SQLException:No suitable driver found for jdbc:jdbc:postgresql://
Cause
- The default URL for the PostgreSQL database connection contains an extra instance of the string jdbc:, as in the example below:
jdbc:jdbc:postgresql://<host>:<port>/db
- There is no PostgreSQL JDBC driver on the application server or the existing PostgreSQL JDBC driver on the server is incompatible with your current version of RSA Identity Governance & Lifecycle.
Resolution
- URL: Remove the extra jdbc: string in the URL.
- DRIVER: Download an appropriate PostgreSQL JDBC driver and add it to the RSA Identity Governance & Lifecycle server.
RSA Governance & Lifecycle 7.5.x, 8.0
URL:
The extra jdbc: string in the database connection URL has been removed starting in RSA Identity Governance & Lifecycle 7.1.1 and therefore does not need to be removed in this version.
DRIVER:
Follow the below steps to download the latest PostgreSQL jar file and upload it to SecurID Governance & Lifecycle.
- Access the PostgreSQL website to download the latest PostgreSQL JDBC42 driver that is compatible with SecurID Governance & Lifecycle JDK 1.8 (i.e postgresql-9.4.1212..jar)
- Click the Upload button on the "External Jars" page from the Collectors > External Jars menu and upload the Jar file you obtained in step 1. Note that an ACM restart is not required after uploading the jar.
- Try testing the collector again. You should get a Connection Successful message.
RSA Identity Governance & Lifecycle 7.1.1, 7.2.x
URL:
The extra jdbc: string in the database connection URL has been removed starting in RSA Identity Governance & Lifecycle 7.1.1 and therefore does not need to be removed in this version.
DRIVER:
Follow the below steps to download the latest PostgreSQL jar file and add it to the RSA Identity Governance & Lifecycle aveksa.ear file.
- Access the PostgreSQL website to download the latest PostgreSQL JDBC42 driver that is compatible with RSA Identity Governance & Lifecycle JDK 1.8 (i.e postgresql-9.4.1212..jar)
- Add the PostgresSQL driver to the RSA Identity Governance & Lifecycle libraries inside the aveksa.ear file.
In order to modify the aveksa.ear file, use the utility customizeACM.sh in $AVEKSA_HOME/deploy that allows the contents of the aveksa.ear file to be extracted and a customized version rebuilt.
- Login as the oracle user.
- Make sure that RSA Identity Governance & Lifecycle is running.
acm status
- Go to the $AVEKSA_HOME/deploy directory
cd $AVEKSA_HOME/deploy
- Run the customizeACM.sh script to extract the .ear file, specifying the location of the .ear file that you want to modify. Enter
customizeACM.sh -c $AVEKSA_HOME/archive/{ear file to modify}
The contents of the .ear are extracted to a directory called /tmp/customizeACM/.
- Copy the downloaded driver postgresql-9.4.1212.jar (in Step 1) to the /tmp/customizeACM/aveksa.ear/aveksa.war/WEB-INF/LocalAgent/common/lib/ directory.
cp <location of postgresql-9.4.1212.jar> /tmp/customizeACM/aveksa.ear/aveksa.war/WEB-INF/LocalAgent/common/lib/
- Make sure the file ownership is set to oracle:oinstall and the file permissions are set to rw- for both owner and group owner.
Login as the root user and use the commands below to set the file ownership and permissions.
cd /tmp/customizeACM/aveksa.ear/aveksa.war/WEB-INF/LocalAgent/common/lib/
chown oracle:oinstall postgresql-9.4.1212.jar
chmod 660 postgresql-9.4.1212.jar
- Login as the oracle user and run the customizeACM.sh script again to rebuild the .ear file.
cd $AVEKSA_HOME/deploy
customizeACM.sh -d
The script archives the new .ear file to $AVEKSA_HOME/archive, appends a time and date stamp to the ear filename and deploys the new customized .ear file.
- Try testing the collector again. You should get a Connection Successful message.
RSA Identity Governance & Lifecycle 7.0.x and 7.1.0
URL:
Edit the collector Database Connection URL and remove the extra jdbc: value. Change:
FROM:
jdbc:jdbc:postgresql://<host>:<port>/<database>
TO:
jdbc:postgresql://<host>:<port>/<database>
DRIVER:
For RSA Identity Governance & Lifecycle 7.1.0, follow the DRIVER steps under RSA Identity Governance & Lifecycle 7.1.1 above.
For RSA Identity Governance & Lifecycle 7.0.x:
For RSA Identity Governance & Lifecycle 7.0.x:
- Access the PostgreSQL website and download the PostgreSQL JDBC41 driver that is compatible with RSA Identity Governance & Lifecycle 7.0.x JDK 1.7 (i.e postgresql-9.4.1212.jre7.jar)
- Follow the DRIVER steps under RSA Identity Governance & Lifecycle 7.1.1 above replacing postgresql-9.4.1212.jar with postgresql-9.4.1212.jre7.jar.
RSA Identity Governance & Lifecycle 6.9.1
URL:
Follow the URL steps under RSA Identity Governance & Lifecycle 7.0.x and 7.1.0 above.
DRIVER:
- Access the PostgreSQL website to download the PostgreSQL JDBC4 driver that is compatible with RSA Identity Governance & Lifecycle JDK 1.6 (i.e postgresql-9.4-1205.jdbc4.jar)
- Login as the oracle user.
- Copy the downloaded postgresql-9.4.1205.jdbc4.jar to $AVEKSA_HOME/jboss/server/default/deploy/aveksa.ear/aveksa.war/WEB-INF/LocalAgent/common/lib/.
cp <location of postgresql-9.4-1205.jdbc4.jar $AVEKSA_HOME/jboss/server/default/deploy/aveksa.ear/aveksa.war/WEB-INF/LocalAgent/common/lib/
- Make sure the file ownership is set to oracle:oinstall and the file permissions to rw- for both owner and group.
Login as the root user and use the commands below to set the file ownership and permissions.
cd $AVEKSA_HOME/jboss-4.2.2.GA/server/default/deploy/aveksa.ear/aveksa.war/WEB-INF/LocalAgent/common/lib/ chown oracle:oinstall postgresql-9.4-1205.jdbc4.jar chmod 660 postgresql-9.4-1205.jdbc4.jar
- Restart RSA Identity Governance & Lifecycle.
acm restart
Related Articles
'java.lang.Error: Probable fatal error:No fonts found' error running a Report in RSA Identity Governance & Lifecycle 133Number of Views Pagination fails by using base URL in a generic REST salesforce ADC/EDC collector in RSA Governance & Lifecycle 191Number of Views ADC fails with 'ORA-01400: cannot insert NULL into ("AVUSER"."GTT_CE_RELATIONS"."SRCPK_ID")' Admin error in RSA Identity G… 101Number of Views Principal Not Found error in RSA Authentication Manager Bulk Administration (AMBA) 169Number of Views RSA Identity Governance and Lifecycle - Workday Collector Datasheet 20Number of Views
Trending Articles
How to recover the Application and AFX after an unexpected database failure in RSA Identity Governance & Lifecycle Troubleshooting AFX Connector issues in RSA Identity Governance & Lifecycle RSA MFA Agent 2.3.6 for Microsoft Windows Installation and Administration Guide RSA Release Notes for RSA Authentication Manager 8.8 RSA Authentication Manager Upgrade Process
Don't see what you're looking for?