This is an automated email from the ASF dual-hosted git repository. desruisseaux pushed a commit to branch geoapi-4.0 in repository https://gitbox.apache.org/repos/asf/sis.git
The following commit(s) were added to refs/heads/geoapi-4.0 by this push: new 2d89458 Make a better effort to find a ClassLoader that can load the Derby database. 2d89458 is described below commit 2d89458049a5ca0fcc3f756c8a283e603d216e1d Author: Martin Desruisseaux <martin.desruisse...@geomatys.com> AuthorDate: Tue Mar 8 10:46:48 2022 +0100 Make a better effort to find a ClassLoader that can load the Derby database. --- .../java/org/apache/sis/internal/metadata/sql/LocalDataSource.java | 4 ++-- .../java/org/apache/sis/internal/metadata/sql/package-info.java | 2 +- .../main/java/org/apache/sis/internal/system/DefaultFactories.java | 6 +++--- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/sql/LocalDataSource.java b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/sql/LocalDataSource.java index 7fba08d..810556f 100644 --- a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/sql/LocalDataSource.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/sql/LocalDataSource.java @@ -46,7 +46,7 @@ import org.apache.sis.internal.util.Strings; * It provides our {@linkplain #initialize() starting point} for initiating the system-wide connection. * * @author Martin Desruisseaux (Geomatys) - * @version 1.1 + * @version 1.2 * @since 1.1 * @module */ @@ -210,7 +210,7 @@ public final class LocalDataSource implements DataSource, Comparable<LocalDataSo case HSQL: classname = "org.hsqldb.jdbc.JDBCDataSource"; break; default: throw new IllegalArgumentException(dialect.toString()); } - final ClassLoader loader = Thread.currentThread().getContextClassLoader(); + final ClassLoader loader = DefaultFactories.getContextClassLoader(); final Class<?> c = Class.forName(classname, true, loader); source = (DataSource) c.getConstructor().newInstance(); final Class<?>[] args = {String.class}; diff --git a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/sql/package-info.java b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/sql/package-info.java index 4ef929e..cca641c 100644 --- a/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/sql/package-info.java +++ b/core/sis-metadata/src/main/java/org/apache/sis/internal/metadata/sql/package-info.java @@ -73,7 +73,7 @@ * * @author Martin Desruisseaux (Geomatys) * @author Johann Sorel (Geomatys) - * @version 1.1 + * @version 1.2 * @since 0.7 * @module */ diff --git a/core/sis-utility/src/main/java/org/apache/sis/internal/system/DefaultFactories.java b/core/sis-utility/src/main/java/org/apache/sis/internal/system/DefaultFactories.java index ce54c96..bcca25d 100644 --- a/core/sis-utility/src/main/java/org/apache/sis/internal/system/DefaultFactories.java +++ b/core/sis-utility/src/main/java/org/apache/sis/internal/system/DefaultFactories.java @@ -32,7 +32,7 @@ import org.apache.sis.util.logging.Logging; * * @author Martin Desruisseaux (Geomatys) * @author Guilhem Legal (Geomatys) - * @version 0.8 + * @version 1.2 * * @see <a href="https://jcp.org/en/jsr/detail?id=330">JSR-330</a> * @@ -204,7 +204,7 @@ public final class DefaultFactories extends SystemListener { * * @since 0.8 */ - private static ClassLoader getContextClassLoader() throws SecurityException { + public static ClassLoader getContextClassLoader() throws SecurityException { final Thread thread = Thread.currentThread(); ClassLoader loader = thread.getContextClassLoader(); final Set<ClassLoader> parents = new HashSet<>(); @@ -212,7 +212,7 @@ public final class DefaultFactories extends SystemListener { parents.add(c); } boolean warnings = false; - for (final StackTraceElement trace : thread.getStackTrace()) { + for (final StackTraceElement trace : thread.getStackTrace()) { // TODO: replace by StackWalker in JDK9. final String element = trace.getClassName(); if (element.startsWith(Modules.CLASSNAME_PREFIX)) try { ClassLoader c = Class.forName(element).getClassLoader();