Multicore does work with EmbeddedSolrServer. It's what we use in our 
application.

solr.xml is also relevant for configuring the cores. We do not do it in quite 
the same manner that Phillip is describing, though. Our CoreContainer is 
initialized by SolrDispatchFilter. After the core container is created, we just 
do 'new EmbeddedSolrServer(cores, "firstCoreNameInSolrXml");' -- it even worked 
without a core name specified, but the behavior was erratic and incorrect in 
other ways in that case.

I would suggest enabling logging for the Solr classes that are likely to help 
explain some of the mystery here: SolrResourceLoader, and CoreContainer. At the 
info level, they will tell you where they are finding solr.xml and how they are 
finding it (whether it's passed in via constructor arguments, or through 
solr.solr.home).

On Jan 6, 2012, at 11:03 AM, Erik Hatcher wrote:

> 
> On Jan 6, 2012, at 10:46 , Yury Kats wrote:
> 
>> On 1/6/2012 10:19 AM, Phillip Rhodes wrote:
>>> 2012/1/6 Yury Kats <yuryk...@yahoo.com>:
>>>> 
>>>> Have you tried passing core name (collection1) to the c'tor, instead
>>>> of the empty string?
>>> 
>>> Yep, but that gives the same error (with the core name appended) such
>>> as "no such core: collection1"
>> 
>> That probably means the home is not set properly, so it can't find solr.xml
>> 
> 
> Again, EmbeddedSolrServer (unless I'm gravely mistaken!) doesn't do 
> multicore.  It's for a single core.  If you want multiple cores supported... 
> created multiple EmbeddedSolrServer instances.   You point the instance to 
> the core's "home".
> 
>       Erik
> 

-- 
Christopher Childs



Reply via email to