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();

Reply via email to