Index: src/edu/ucsb/nceas/metacat/index/MetacatSolrEngineDescriptionHandler.java
===================================================================
--- src/edu/ucsb/nceas/metacat/index/MetacatSolrEngineDescriptionHandler.java	(revision 7729)
+++ src/edu/ucsb/nceas/metacat/index/MetacatSolrEngineDescriptionHandler.java	(revision 7730)
@@ -34,8 +34,10 @@
 import java.util.Properties;
 import java.util.Set;
 
+import javax.xml.parsers.ParserConfigurationException;
 
 
+
 import org.apache.commons.io.FileUtils;
 import org.apache.commons.logging.Log;
 import org.apache.commons.logging.LogFactory;
@@ -44,10 +46,14 @@
 import org.apache.solr.core.SolrCore;
 import org.apache.solr.schema.IndexSchema;
 import org.apache.solr.schema.SchemaField;
+import org.dataone.service.exceptions.NotFound;
+import org.dataone.service.exceptions.UnsupportedType;
 import org.dataone.service.types.v1_1.QueryEngineDescription;
 import org.dataone.service.types.v1_1.QueryField;
+import org.xml.sax.SAXException;
 
 import edu.ucsb.nceas.metacat.common.SolrServerFactory;
+import edu.ucsb.nceas.metacat.common.query.SolrQueryServiceController;
 import edu.ucsb.nceas.metacat.properties.PropertyService;
 import edu.ucsb.nceas.utilities.FileUtil;
 
@@ -89,7 +95,7 @@
      * Constructor
      */
     private MetacatSolrEngineDescriptionHandler() throws Exception {
-       CoreContainer container = SolrServerFactory.getCoreContainer();
+       /*CoreContainer container = SolrServerFactory.getCoreContainer();
        if(container == null) {
            throw new Exception("MetacatSolrEngineDescriptionHandler - The Solr Server is not configured as an EmbeddedSolrServer and the EmbeddedSolrServer is the only SolrServer that the Metacat can provide the Query Engine Description.");
        }
@@ -100,13 +106,13 @@
        SolrCore core = container.getCore(coreName);
        if(core == null) {
            throw new Exception("MetacatSolrEngineDescriptionHandler - Metacat can't find the SolrCore for the given name - "+SolrServerFactory.getCollectionName());
-       }
-       init(core);
+       }*/
+       init();
     }
     
    
     
-    private void init(SolrCore core) throws IOException {
+    private void init() throws IOException, UnsupportedType, NotFound, ParserConfigurationException, SAXException {
         Map<String, String>fieldDescriptions = loadSchemaFieldDescriptions();
         qed = new QueryEngineDescription();
         qed.setName(MetacatSolrIndex.SOLRQUERY);
@@ -113,8 +119,8 @@
         //setSchemaVersionFromPropertiesFile(qed);
         setSolrVersion();
 
-        IndexSchema schema = core.getSchema();
-        Map<String, SchemaField> fieldMap = schema.getFields();
+        //IndexSchema schema = core.getSchema();
+        Map<String, SchemaField> fieldMap = SolrQueryServiceController.getInstance().getIndexSchemaFields();
         for (SchemaField schemaField : fieldMap.values()) {
             qed.addQueryField(createQueryFieldFromSchemaField(schemaField, fieldDescriptions));
         }
@@ -123,26 +129,14 @@
     
     /**
      * Based on org.apache.solr.handler.admin.SystemInfoHandler.getLuceneInfo()
+     * @throws SAXException 
+     * @throws IOException 
+     * @throws ParserConfigurationException 
+     * @throws NotFound 
+     * @throws UnsupportedType 
      */
-    private void setSolrVersion() {
-        String solrSpecVersion = "";
-        Package p = SolrCore.class.getPackage();
-        StringWriter tmp = new StringWriter();
-        solrSpecVersion = p.getSpecificationVersion();
-        if (null != solrSpecVersion) {
-            try {
-                XML.escapeCharData(solrSpecVersion, tmp);
-            } catch (IOException e) {
-                e.printStackTrace();
-            }
-            solrSpecVersion = tmp.toString();
-        }
-        if (solrSpecVersion != null && !solrSpecVersion.trim().equals("")) {
-            qed.setQueryEngineVersion(solrSpecVersion);
-        } else {
-            qed.setQueryEngineVersion(UNKNOWN);
-        }
-        
+    private void setSolrVersion() throws UnsupportedType, NotFound, ParserConfigurationException, IOException, SAXException {
+        qed.setQueryEngineVersion(SolrQueryServiceController.getInstance().getSolrSpecVersion());
     }
     
 
