Example usage for org.apache.solr.client.solrj.embedded EmbeddedSolrServer EmbeddedSolrServer

List of usage examples for org.apache.solr.client.solrj.embedded EmbeddedSolrServer EmbeddedSolrServer

Introduction

In this page you can find the example usage for org.apache.solr.client.solrj.embedded EmbeddedSolrServer EmbeddedSolrServer.

Prototype

public EmbeddedSolrServer(CoreContainer coreContainer, String coreName) 

Source Link

Document

Create an EmbeddedSolrServer wrapping a CoreContainer.

Usage

From source file:sample.solr.SampleSolrIntegrationTest.java

License:Apache License

@Before
public void setup() {

    this.container = new CoreContainer("testdata/solr");
    this.container.load();

    this.server = new EmbeddedSolrServer(container, "collection1");

    try {/*  w ww  .j  a  v a2  s  .  c  o m*/
        server.deleteByQuery("*:*");
        server.commit();
    } catch (SolrServerException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }

    SolrInputDocument document = new SolrInputDocument();
    document.addField("name", "bob");
    document.addField("text", "Lorem ipsum");
    document.addField("id", "" + System.currentTimeMillis());

    try {
        server.add(document);
        server.commit();
    } catch (SolrServerException e) {
        e.printStackTrace();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

From source file:se.simonsoft.cms.indexing.xml.solr.CoreReposxmlIntegrationTest.java

License:Apache License

/**
 * @return instance for injection when integration testing our logic with solr, for index testing we do fine with SolrTestCaseJ4 helper methods
 *///from   ww w . ja  va  2  s .  c o m
public SolrServer getTestServer() {
    return new EmbeddedSolrServer(h.getCoreContainer(), h.getCore().getName()); // cache between tests?
}

From source file:uk.ac.ebi.atlas.solr.EmbeddedSolrServerFactory.java

License:Apache License

public EmbeddedSolrServer createEmbeddedSolrServerInstance() {
    CoreContainer coreContainer = new CoreContainer();

    coreContainer.load();/* ww w  .j a  v  a2s. co m*/
    return new EmbeddedSolrServer(coreContainer, "gxa");

}

From source file:uk.bl.wa.indexer.WARCIndexerEmbeddedSolrTest.java

License:Open Source License

/**
 * @throws java.lang.Exception// w  w  w  . j  a  v  a  2 s .  c  o m
 */
@Before
public void setUp() throws Exception {

    // Note that the following property could be set through JVM level arguments too
    String solrXmlPath = getClass().getClassLoader().getResource("solr/solr.xml").getPath();
    System.setProperty("solr.solr.home", new File(solrXmlPath).getParent());
    System.setProperty("solr.data.dir", "target/solr-test-home");
    System.setProperty("solr.lock.type", "native");
    System.out.println("Loading container...");
    CoreContainer coreContainer = new CoreContainer();
    coreContainer.load();
    System.out.println("Setting up embedded server...");
    server = new EmbeddedSolrServer(coreContainer, "discovery");
    // Remove any items from previous executions:
    server.deleteByQuery("*:*");
}

From source file:xc.mst.helper.TestHelper.java

License:Open Source License

/**
 * Initialize Solr server//www.j av  a 2s  .c om
 * 
 * Loads the solr in in workspace\MetadataServicesToolkit\MST-instances\MetadataServicesToolkit\solr.
 * Data(index) will be created under workspace\MetadataServicesToolkit\MST-instances\MetadataServicesToolkit\solr\data
 */
public static void initializeSolr() {

    /*
     * Loads the solr in  in workspace\MetadataServicesToolkit\MST-instances\MetadataServicesToolkit\solr.
     * Data(index) will be created under workspace\MetadataServicesToolkit\MST-instances\MetadataServicesToolkit\solr\data
     */
    String solrHome = MSTConfiguration.getUrlPath() + MSTConfiguration.FILE_SEPARATOR + "solr";

    try {
        CoreContainer container = new CoreContainer();
        CoreDescriptor descriptor = new CoreDescriptor(container, "core1", solrHome);
        SolrCore core = container.create(descriptor);
        container.register("core1", core, false);

        ((MSTSolrService) MSTConfiguration.getInstance().getBean("MSTSolrServer"))
                .setServer(new EmbeddedSolrServer(container, "core1"));
    } catch (IOException ioe) {
        ioe.printStackTrace();
    } catch (SAXException se) {
        se.printStackTrace();
    } catch (ParserConfigurationException pe) {
        pe.printStackTrace();

    }
}

From source file:xc.mst.manager.record.MSTSolrService.java

License:Open Source License

/**
 * Get Solr server instance/*from   w w  w. j ava  2  s . c o  m*/
 *
 * @return
 */
private SolrServer createSolrServer() {

    if (getServer() == null) {
        String solrHome = MSTConfiguration.getUrlPath();
        solrHome = solrHome + MSTConfiguration.FILE_SEPARATOR + "solr";
        System.setProperty("solr.home", solrHome);
        System.setProperty("solr.solr.home", solrHome);

        log.info("Opening Solr at 3" + solrHome);

        java.util.logging.Level logLevel = getLogLevel(config.getProperty(Constants.CONFIG_SOLR_LOG_LEVEL));
        log.info("1");

        try {
            java.util.logging.Logger logg = java.util.logging.Logger.getLogger("org.apache.solr");
            logg.setUseParentHandlers(false);
            logg.log(java.util.logging.Level.INFO, "Changing log level to " + logLevel);
            logg.setLevel(logLevel);
            log.info("2");

            // using multiple cores is a bit different with solrj, followed instructions found here:
            //    http://wiki.apache.org/solr/Solrj
            //    These 1st statements are the same regardless of the core, load the file describing the cores:
            File solrConfHomeBaseFile = new File(solrHome + MSTConfiguration.FILE_SEPARATOR + "conf");
            File solrHomeXmlFile = new File(solrConfHomeBaseFile, "solr.xml");
            CoreContainer container = new CoreContainer();
            container.load(solrHome, solrHomeXmlFile);

            // now, use the proper core for your EmbeddedSolrServer:
            //    use:
            //       "core name as defined in solr.xml"
            server = new EmbeddedSolrServer(container, getSolrCore());

            log.info("3");
            LogWriter.addInfo(logObj.getLogFileLocation(),
                    "The Solr server instance was successfully using the configuration in " + solrHome
                            + " for SolrCore: " + getSolrCore());
            log.info("successfully opened solr: " + server);
        } catch (IOException ioe) {
            log.error("Failure to create server instance. Solr Server is not created.", ioe);

            LogWriter.addError(logObj.getLogFileLocation(),
                    "Failed to create Solr server instance using the configuration in " + solrHome
                            + " for SolrCore: " + getSolrCore());

            logObj.setErrors(logObj.getErrors() + 1);
            try {
                getLogDAO().update(logObj);
            } catch (DataException e) {
                log.error("DataExcepiton while updating the log's error count.");
            }
        } catch (SAXException se) {
            log.error("Failure to create server instance. Solr Server is not created.", se);

            LogWriter.addError(logObj.getLogFileLocation(),
                    "Failed to create Solr server instance using the configuration in " + solrHome
                            + " for SolrCore: " + getSolrCore());

            logObj.setErrors(logObj.getErrors() + 1);
            try {
                getLogDAO().update(logObj);
            } catch (DataException e) {
                log.error("DataExcepiton while updating the log's error count.");
            }
        } catch (ParserConfigurationException pe) {
            log.error("Failure to create server instance. Solr Server is not created.", pe);

            LogWriter.addError(logObj.getLogFileLocation(),
                    "Failed to create Solr server instance using the configuration in " + solrHome
                            + " for SolrCore: " + getSolrCore());

            logObj.setErrors(logObj.getErrors() + 1);
            try {
                getLogDAO().update(logObj);
            } catch (DataException e) {
                log.error("DataExcepiton while updating the log's error count.");
            }
        } catch (Exception e) {
            log.error("Failure to create server instance. Solr Server is not created.", e);

            LogWriter.addError(logObj.getLogFileLocation(),
                    "Failed to create Solr server instance using the configuration in " + solrHome
                            + " for SolrCore: " + getSolrCore());

            logObj.setErrors(logObj.getErrors() + 1);
            try {
                getLogDAO().update(logObj);
            } catch (DataException e1) {
                log.error("DataExcepiton while updating the log's error count.");
            }
        }
    }

    return server;
}