Correctly, the PGDataSourceFactory should simply instatiate the required
class directly, no need for using the DriverManager at all!
See [1] line 131 or [2] line 40, 47, 54 for example.
The problem with DataSourceFactory is that it does not support dynmics
or different class-loader spaces very well.
[1]
https://github.com/MariaDB/mariadb-connector-j/blob/1d831664f7d871ccd871fb9b2137ce3cd3421c4d/src/main/java/org/mariadb/jdbc/internal/osgi/MariaDbDataSourceFactory.java
[2]
https://github.com/Microsoft/mssql-jdbc/blob/dev/src/main/java/com/microsoft/sqlserver/jdbc/osgi/SQLServerDataSourceFactory.java
Am 01.05.19 um 16:49 schrieb Steinar Bang:
'Christoph Läubrich' via OPS4J <ops4j-/[email protected]>:
DriverManger.register/unregister can't work reliable in OSGi
(especially with static insitilizer), thus always the
DataSourceFactory should be used instead!
PGDataSourceFactory is currently implemented using the regular PG JDBC
driver, ie. the Driver class, which in turn uses the DriverManager in
rt.jar.
So the fix should be to change the implementation of PGDataSourceFactory
to not use the Driver class via DriverManager? Maybe
PGDataSourceFactory should create and own a Driver instance?
--
--
------------------
OPS4J - http://www.ops4j.org - [email protected]
---
You received this message because you are subscribed to the Google Groups "OPS4J" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
For more options, visit https://groups.google.com/d/optout.