diff --git a/solr/core/src/java/org/apache/solr/core/RequestHandlers.java b/solr/core/src/java/org/apache/solr/core/RequestHandlers.java index a108cffadc4..494ed4af6d6 100644 --- a/solr/core/src/java/org/apache/solr/core/RequestHandlers.java +++ b/solr/core/src/java/org/apache/solr/core/RequestHandlers.java @@ -532,6 +532,7 @@ public final class RequestHandlers { try { if(jarContent == null) checkJarAvailable(); buf = jarContent.jar.getFileContent(path); + if(buf==null) throw new ClassNotFoundException("class not found in loaded jar"+ name ) ; } catch (IOException e1) { throw new ClassNotFoundException("class not found "+ name ,e1) ; diff --git a/solr/core/src/test/org/apache/solr/core/BlobStoreTestRequestHandler.java b/solr/core/src/test/org/apache/solr/core/BlobStoreTestRequestHandler.java index b628d483bbc..edbc9465e70 100644 --- a/solr/core/src/test/org/apache/solr/core/BlobStoreTestRequestHandler.java +++ b/solr/core/src/test/org/apache/solr/core/BlobStoreTestRequestHandler.java @@ -28,6 +28,6 @@ public class BlobStoreTestRequestHandler extends DumpRequestHandler{ @Override public void handleRequestBody(SolrQueryRequest req, SolrQueryResponse rsp) throws IOException { super.handleRequestBody(req, rsp); - rsp.add("classloader", this.getClass().getClassLoader().getClass().getName()); + rsp.add("class", BlobStoreTestRequestHandler.class.getName()); } } diff --git a/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java b/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java index 24ad276e19e..cac0c13e7b3 100644 --- a/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java +++ b/solr/core/src/test/org/apache/solr/core/TestDynamicLoading.java @@ -20,6 +20,7 @@ package org.apache.solr.core; import java.io.IOException; import java.nio.ByteBuffer; +import java.nio.charset.StandardCharsets; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @@ -30,6 +31,7 @@ import java.util.zip.ZipOutputStream; import org.apache.solr.client.solrj.SolrServer; import org.apache.solr.client.solrj.impl.HttpSolrServer; import org.apache.solr.cloud.AbstractFullDistribZkTestBase; +import org.apache.solr.common.cloud.ZkStateReader; import org.apache.solr.handler.TestBlobHandler; import org.apache.solr.util.RESTfulServerProvider; import org.apache.solr.util.RestTestHarness; @@ -96,8 +98,7 @@ public class TestDynamicLoading extends AbstractFullDistribZkTestBase { // Thread.sleep(100); map = TestSolrConfigHandler.getRespMap("/test1?wt=json", client); - - assertEquals(RequestHandlers.MemClassLoader.class.getName(), map.get("classloader")); + assertEquals(new String( ZkStateReader.toJSON(map) , StandardCharsets.UTF_8), BlobStoreTestRequestHandler.class.getName(), map.get("class")); }