> Many built-in URL Handlers perform additional syntax checking on the URL when > `URLStreamHandler::openConnection` / connect is called. In some cases, some > of these checks could be also performed earlier, when > `URLStreamHandler::parseURL` is called. > > This fix proposes to slightly modify the behavior of JDK built-in URL > handlers to perform these checks early, and throw `MalformedURLException` > earlier, at URL construction time, when that is possible, instead of delaying > until `URL::openConnection` or `URLConnection::connect` are called. > > Because java.net.URL constructors are already specified to throw > `MalformedURLException` in such cases, no API documentation changes are > necessary. > > A new JDK specific system property `-Djdk.net.url.delayParsing` or > `-Djdk.net.url.delayParsing=true` can be specified on the command line to > revert to the previous behavior. By default, the property is not set, and the > new behavior is in place. The property can be specified on the java command > line if unexpected regressions are observed. > > The new property will be documented in release notes, and may be removed in a > future release. > > CSR: https://bugs.openjdk.org/browse/JDK-8294592
Daniel Fuchs has updated the pull request with a new target base due to a merge or a rebase. The incremental webrev excludes the unrelated changes brought in by the merge/rebase. The pull request contains two additional commits since the last revision: - Merge branch 'master' into url-early-parsing-8293590 - 8293590 ------------- Changes: - all: https://git.openjdk.org/jdk/pull/10534/files - new: https://git.openjdk.org/jdk/pull/10534/files/b612f6e4..18ea5282 Webrevs: - full: https://webrevs.openjdk.org/?repo=jdk&pr=10534&range=01 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=10534&range=00-01 Stats: 7922 lines in 193 files changed: 4924 ins; 2174 del; 824 mod Patch: https://git.openjdk.org/jdk/pull/10534.diff Fetch: git fetch https://git.openjdk.org/jdk pull/10534/head:pull/10534 PR: https://git.openjdk.org/jdk/pull/10534