-
Enhancement
-
Resolution: Other
-
P5
-
None
-
1.3.1
-
generic
-
generic
Name: bsC130419 Date: 07/27/2001
java version "1.3.0_02"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.0_02)
Java HotSpot(TM) Client VM (build 1.3.0_02, mixed mode)
You should work harder to achive better pluggability for Java extensions and
3rd party drivers and implementations. The goal should be that it is enough
with adding one (or a couple) JAR files to the CLASSPATH (or drop them in the
jre/lib/ext/ directory), the user shouldn't have to edit any property files, or
use any system properties. And the application shouldn't have to do something
with the implementation classes directly.
One way to acheive this can be to use the JAR Services API.
Some example of bad pluggability:
* JSSE 1.0.2 reference implementation requires you to edit the
jre/lib/security/java.security property file.
* To use an JDBC driver, you have to either set some system property or have
the application to explicitly load an implemenation class. It should be enough
with an JDBC URL with an unique scheme name.
* Handlers for URL schemes requires a property to be set (e.g. the "https"
handler in JSSE).
* You have to specify a bunch of properties in order to use 3rd party JNDI
implementations. It should be enough with an URL. And in this case, there
should be a constructor to javax.naming.InitialContext taking an URL.
(Review ID: 128580)
======================================================================
- relates to
-
JDK-4640520 java.util.Service
- Resolved