You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@uima.apache.org by sc...@apache.org on 2016/08/18 13:06:26 UTC
svn commit: r1756775 -
/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/internal/util/MsgLocalizationClassLoader.java
Author: schor
Date: Thu Aug 18 13:06:25 2016
New Revision: 1756775
URL: http://svn.apache.org/viewvc?rev=1756775&view=rev
Log:
[UIMA-3692] add thread context class loader at end of search for bundle class in MsgLocalizationClassLoader.
Modified:
uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/internal/util/MsgLocalizationClassLoader.java
Modified: uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/internal/util/MsgLocalizationClassLoader.java
URL: http://svn.apache.org/viewvc/uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/internal/util/MsgLocalizationClassLoader.java?rev=1756775&r1=1756774&r2=1756775&view=diff
==============================================================================
--- uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/internal/util/MsgLocalizationClassLoader.java (original)
+++ uima/uimaj/trunk/uimaj-core/src/main/java/org/apache/uima/internal/util/MsgLocalizationClassLoader.java Thu Aug 18 13:06:25 2016
@@ -30,6 +30,7 @@ import java.util.Map;
* the class loader that loaded the 2nd previous caller
* the class loader that loaded the 3rd previous caller
* etc.
+ * and finally, the thread local context loader, if it exists UIMA-3692
* Note: the caller of this method is presumed to be framework code
* that was, in turn, called to perform some logging or whatever,
* so we skip the 1st previous caller.
@@ -105,9 +106,11 @@ public class MsgLocalizationClassLoader
// leave c == null
}
}
- throw new ClassNotFoundException(name);
+ // UIMA-3692 try the thread context class loader
+ // if not found, will return class not found exception
+ return Thread.currentThread().getContextClassLoader().loadClass(name);
}
-
+
@Override
public URL getResource(String name) {
Map<ClassLoader,ClassLoader> alreadySearched = new IdentityHashMap<ClassLoader, ClassLoader>(7);