RFR: 8311032: Empty value for java.protocol.handler.pkgs system property can lead to unnecessary classloading attempts of protocol handlers

Alan Bateman alanb at openjdk.org
Wed Jun 28 12:24:06 UTC 2023


On Wed, 28 Jun 2023 11:15:53 GMT, Jaikiran Pai <jpai at openjdk.org> wrote:

> Can I please get a review for this change which proposes to address https://bugs.openjdk.org/browse/JDK-8311032?
> 
> The commit in this PR skips the class lookups when the package name prefix is empty, either due to the `java.protocol.handler.pkgs` system property value being empty or due to individual parts of the `|` delimited value being empty.
> 
> This avoids potentially expensive classloading attempts for a class name of the form `.foo.Handler`, which is bound to fail.
> 
> No new jtreg test has been added given the nature of the change. There's already an existing test `test/jdk/java/net/URL/HandlersPkgPrefix/HandlersPkgPrefix.java` which tests different values for the `java.protocol.handler.pkgs` system property (including empty value) and that test continues to pass with this change.
> 
> tier testing is currently in progress.

No objection to changing this but I'm curious if this is a real issue or not. Have you seen deployments with -Dava.protocol.handler.pkgs=<empty> ?  Just curious.

-------------

PR Comment: https://git.openjdk.org/jdk/pull/14693#issuecomment-1611302351


More information about the net-dev mailing list