I believe that constructor expects to find an alternate format solr config
that specifies the cores, eg like the one you can find in
example/multicore/solr.xml
http://svn.apache.org/repos/asf/lucene/solr/trunk/example/multicore/solr.xml

Looks like that error is not finding the root solr node, so likely your
trying to use a regular solrconfig.xml format?

-- 
-- 
- Mark

http://www.lucidimagination.com

On Mon, Jul 13, 2009 at 8:53 PM, Reuben Firmin <reub...@benetech.org> wrote:

> Hi,
>
> I'm setting up an embedded solr server from a unit test (the non-bolded
> lines are just moving test resources to a tmp directory which is acting as
> solor.home.)
>
>        final File dir = FileUtils.createTmpSubdir();
> *        System.setProperty("solr.solr.home", dir.getAbsolutePath());*
>        final File conf = new File(dir, "conf");
>        conf.mkdir();
>        final PathMatchingResourcePatternResolver pmrpr = new
> PathMatchingResourcePatternResolver();
>        final File c1 = pmrpr.getResource("classpath:schema.xml").getFile();
>        final File c2 =
> pmrpr.getResource("classpath:solrconfig.xml").getFile();
>        final File c3 =
> pmrpr.getResource("classpath:test_protwords.txt").getFile();
>        final File c4 =
> pmrpr.getResource("classpath:test_stopwords.txt").getFile();
>        final File c5 =
> pmrpr.getResource("classpath:test_synonyms.txt").getFile();
>        FileUtils.copyFileToDirectory(c1, conf);
>        // NOTE! this lives in the top level dir
>        FileUtils.copyFileToDirectory(c2, dir);
>        copyAndRenameTestFile(c3, dir, "protwords.txt", conf);
>        copyAndRenameTestFile(c4, dir, "stopwords.txt", conf);
>        copyAndRenameTestFile(c5, dir, "synonyms.txt", conf);
>
> *        final CoreContainer.Initializer initializer = new
> CoreContainer.Initializer();
>        initializer.setSolrConfigFilename("solrconfig.xml");
>        final CoreContainer coreContainer = initializer.initialize();
>        final EmbeddedSolrServer server = new
> EmbeddedSolrServer(coreContainer, "");
>        engine.setServer(server);*
>
> The problem with this is that CoreContainer trips over and dumps an
> exception to the log:
>
> javax.xml.transform.TransformerException: Unable to evaluate expression
> using this context
>    at com.sun.org.apache.xpath.internal.XPath.execute(XPath.java:363)
>    at
> com.sun.org.apache.xpath.internal.jaxp.XPathImpl.eval(XPathImpl.java:213)
>    at
>
> com.sun.org.apache.xpath.internal.jaxp.XPathImpl.evaluate(XPathImpl.java:275)
>    at
> org.apache.solr.core.CoreContainer.readProperties(CoreContainer.java:241)
>    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:189)
>    at
>
> org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:104)
>    at
>
> org.bookshare.search.solr.SolrSearchEngineTest.setup(SolrSearchEngineTest.java:44)
>
> It appears to be trying to evaluate "property", which doesn't exist in
> solrconfig.xml (which is pretty much the same as
>
> http://svn.apache.org/repos/asf/lucene/solr/trunk/example/solr/conf/solrconfig.xml
> ).
>
>
> Anybody see anything obviously wrong? If not, what else can I give you to
> help debug this?
>
> Thanks
> Reuben
>

Reply via email to