I am slightly confused by something - possibly because I don't understand this correctly. If I deploy the PostgreSQL JDBC4 driver, which contains the META-INF/services/java.sql.Driver file containg the proper driver class name, then when I deploy the JAR I get the following output:
Deploying non-JDBC-compliant driver class org.postgresql.Driver (version 9.0)
If I remove the java.sql.Driver file from the JAR and deploy it again, I do not get any warning and it appears to deploy fine:
Starting deployment of "postgresql-9.0-801.jar"
Am I doing something wrong by using the java.sql.Driver file? According to the documentation, the file java.sql.Driver is requried to make the JAR JDBC4-compliant, so why does the output contradict this and tell me that I am deploying a non-JDBC-compliant driver?
In the postgresql jdbc api:
public boolean jdbcCompliant()
Report whether the driver is a genuine JDBC compliant driver. A driver may only report "true" here if it passes the JDBC compliance tests, otherwise it is required to return false. JDBC compliance requires full support for the JDBC API and full support for SQL 92 Entry Level.
For PostgreSQL, this is not yet possible, as we are not SQL92 compliant (yet).
- Specified by: