The drivers tab allows you to manage the jdbc jar file that will be provided to the application or used by the proxy.
- Version: The version ID of the driver, for reference only
- Example URL: Used as a reference, not required
- Website URL: Used as a reference, not required
- JDBC Class: Required: provided by jdbc driver vendor
- Data Source Class: Optional: used in some situations, provided by JDBC driver vendor
- XA Data Source Class: Optional: used in some situations when using XA transactions, provided by JDBC driver vendor
- Notes: Optional text field for notes on the driver
- Driver Upload: Upload your driver file(s) here. If a driver happens to be incompatible with our remote download scheme, this driver file can be left blank, as long as the driver is available on the server using the Heimdall Driver itself. This is a known issue with the AWS Redshift driver.
When a vendor driver is used by the Heimdall driver, we will first attempt to load the driver remotely, i.e. by downloading the driver from the central manager. This provides a single source for the drivers, simplifying the management of the drivers. If this fails, it will attempt to use the local class loader in order to find the driver. In an OSGI Java environment, it may be necessary to package the database driver with the Heimdall driver as a dependency in order for all behaviors to work as expected if the remote load feature does not work.
Proxy vs. JDBC Driver Behavior
When using Heimdall in proxy mode, it is highly recommended that the drivers provided in the Heimdall install package be used. This is as a result of the tight integration work that is done with Heimdall to operate with these drivers, and may be broken between release builds of the vendor driver. In JDBC mode, this requirement can be ignored, and the application recommended version of the drivers should be used.