You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@stanbol.apache.org by Manish Aggarwal <ma...@gmail.com> on 2013/09/25 13:49:16 UTC
getting exception when switched to newer version of solr
Hi,
I am using the following library in my project
<dependency>
<groupId>org.apache.stanbol</groupId>
<artifactId>org.apache.stanbol.commons.solr.managed</artifactId>
<version>0.12.0-SNAPSHOT</version>
</dependency>
Today while running my project I got the following exception (after it
downloaded the latest version of solr.manaed from maven repos):
Exception in thread "main" java.lang.NoSuchMethodError:
org.apache.solr.core.CoreContainer.load()V
at
org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.initServer(StandaloneManagedSolrServer.java:220)
at
org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.<init>(StandaloneManagedSolrServer.java:203)
at
org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.createManagedServer(StandaloneManagedSolrServer.java:169)
at
org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.getManagedServer(StandaloneManagedSolrServer.java:118)
at
org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.getManagedServer(StandaloneManagedSolrServer.java:154)
at
org.apache.stanbol.commons.solr.managed.standalone.StandaloneEmbeddedSolrServerProvider.getSolrServer(StandaloneEmbeddedSolrServerProvider.java:87)
The relevant code is where the exception is coming is :
private static void initYard(String solrServerDir) throws YardException,
IOException {
SolrYardConfig config = new SolrYardConfig(YARD_ID, SOLR_CORE_NAME);
config.setName("Dbpedia Solr Yard");
config.setDescription("The Solr Yard for querying dbpedia");
config.setAllowInitialisation(false);
System.setProperty(ManagedSolrServer.MANAGED_SOLR_DIR_PROPERTY,
solrServerDir);
IndexReference solrServerRef =
IndexReference.parse(config.getSolrServerLocation());
solrServerProvider =
StandaloneEmbeddedSolrServerProvider.getInstance();
server = solrServerProvider.getSolrServer(solrServerRef, null);//,
//config.isAllowInitialisation() ?
config.getIndexConfigurationName() : null);
//Optional support for the nsPrefix service
final NamespacePrefixService nsPrefixService;
ServiceLoader<NamespacePrefixService> spsl =
ServiceLoader.load(NamespacePrefixService.class);
Iterator<NamespacePrefixService> it = spsl.iterator();
if(it.hasNext()){
nsPrefixService = it.next();
} else {
nsPrefixService = null;
}
yard = new SolrYard(server, config, nsPrefixService);
}
This code was working perfectly, till the latest libraries are fetched from
maven. Kindly let me know in case I am missing something?
Re: getting exception when switched to newer version of solr
Posted by Rupert Westenthaler <ru...@gmail.com>.
Hi Manish
With STANBOL-1162 (revision 1525560 [2]) Stanbol switched to Solr 4.4.
I assume that this error comes from using a newer revision of
commons.solr.managed with an older version of commons.solr.core as the
"CoreContainer.load()" method was added in Solr 4.3 and is not present
in Solr 4.2
If you do not use a new launcher please check that installed
* commons.solr.*
* enhancer.engines.smartcn.token
* stanbol.enhancer.engines.kuromoji.nlp
* engines.entitylinking.labeltokenizer.kuromoji
bundles are newer as [2]. Also ensure
* to update to com.google.guava:guava:14.0.1
* and add the bundle
com.googlecode.concurrentlinkedhashmap:concurrentlinkedhashmap-lru:1.4
best
Rupert
[1] https://issues.apache.org/jira/browse/STANBOL-1162
[2] http://svn.apache.org/r1525560
On Wed, Sep 25, 2013 at 1:50 PM, Manish Aggarwal <ma...@gmail.com> wrote:
> the exception is coming in line
>
> server = solrServerProvider.getSolrServer(solrServerRef, null);//,
>
>
> On Wed, Sep 25, 2013 at 5:19 PM, Manish Aggarwal <ma...@gmail.com>wrote:
>
>> Hi,
>>
>> I am using the following library in my project
>> <dependency>
>> <groupId>org.apache.stanbol</groupId>
>> <artifactId>org.apache.stanbol.commons.solr.managed</artifactId>
>> <version>0.12.0-SNAPSHOT</version>
>> </dependency>
>>
>> Today while running my project I got the following exception (after it
>> downloaded the latest version of solr.manaed from maven repos):
>>
>> Exception in thread "main" java.lang.NoSuchMethodError:
>> org.apache.solr.core.CoreContainer.load()V
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.initServer(StandaloneManagedSolrServer.java:220)
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.<init>(StandaloneManagedSolrServer.java:203)
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.createManagedServer(StandaloneManagedSolrServer.java:169)
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.getManagedServer(StandaloneManagedSolrServer.java:118)
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.getManagedServer(StandaloneManagedSolrServer.java:154)
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneEmbeddedSolrServerProvider.getSolrServer(StandaloneEmbeddedSolrServerProvider.java:87)
>>
>>
>>
>>
>> The relevant code is where the exception is coming is :
>>
>> private static void initYard(String solrServerDir) throws YardException,
>> IOException {
>> SolrYardConfig config = new SolrYardConfig(YARD_ID,
>> SOLR_CORE_NAME);
>> config.setName("Dbpedia Solr Yard");
>> config.setDescription("The Solr Yard for querying dbpedia");
>> config.setAllowInitialisation(false);
>> System.setProperty(ManagedSolrServer.MANAGED_SOLR_DIR_PROPERTY,
>> solrServerDir);
>> IndexReference solrServerRef =
>> IndexReference.parse(config.getSolrServerLocation());
>> solrServerProvider =
>> StandaloneEmbeddedSolrServerProvider.getInstance();
>> server = solrServerProvider.getSolrServer(solrServerRef, null);//,
>> //config.isAllowInitialisation() ?
>> config.getIndexConfigurationName() : null);
>> //Optional support for the nsPrefix service
>> final NamespacePrefixService nsPrefixService;
>> ServiceLoader<NamespacePrefixService> spsl =
>> ServiceLoader.load(NamespacePrefixService.class);
>> Iterator<NamespacePrefixService> it = spsl.iterator();
>> if(it.hasNext()){
>> nsPrefixService = it.next();
>> } else {
>> nsPrefixService = null;
>> }
>> yard = new SolrYard(server, config, nsPrefixService);
>> }
>>
>>
>>
>> This code was working perfectly, till the latest libraries are fetched
>> from maven. Kindly let me know in case I am missing something?
>>
>>
>>
>>
--
| Rupert Westenthaler rupert.westenthaler@gmail.com
| Bodenlehenstraße 11 ++43-699-11108907
| A-5500 Bischofshofen
Re: getting exception when switched to newer version of solr
Posted by Manish Aggarwal <ma...@gmail.com>.
the exception is coming in line
server = solrServerProvider.getSolrServer(solrServerRef, null);//,
On Wed, Sep 25, 2013 at 5:19 PM, Manish Aggarwal <ma...@gmail.com>wrote:
> Hi,
>
> I am using the following library in my project
> <dependency>
> <groupId>org.apache.stanbol</groupId>
> <artifactId>org.apache.stanbol.commons.solr.managed</artifactId>
> <version>0.12.0-SNAPSHOT</version>
> </dependency>
>
> Today while running my project I got the following exception (after it
> downloaded the latest version of solr.manaed from maven repos):
>
> Exception in thread "main" java.lang.NoSuchMethodError:
> org.apache.solr.core.CoreContainer.load()V
> at
> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.initServer(StandaloneManagedSolrServer.java:220)
> at
> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.<init>(StandaloneManagedSolrServer.java:203)
> at
> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.createManagedServer(StandaloneManagedSolrServer.java:169)
> at
> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.getManagedServer(StandaloneManagedSolrServer.java:118)
> at
> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.getManagedServer(StandaloneManagedSolrServer.java:154)
> at
> org.apache.stanbol.commons.solr.managed.standalone.StandaloneEmbeddedSolrServerProvider.getSolrServer(StandaloneEmbeddedSolrServerProvider.java:87)
>
>
>
>
> The relevant code is where the exception is coming is :
>
> private static void initYard(String solrServerDir) throws YardException,
> IOException {
> SolrYardConfig config = new SolrYardConfig(YARD_ID,
> SOLR_CORE_NAME);
> config.setName("Dbpedia Solr Yard");
> config.setDescription("The Solr Yard for querying dbpedia");
> config.setAllowInitialisation(false);
> System.setProperty(ManagedSolrServer.MANAGED_SOLR_DIR_PROPERTY,
> solrServerDir);
> IndexReference solrServerRef =
> IndexReference.parse(config.getSolrServerLocation());
> solrServerProvider =
> StandaloneEmbeddedSolrServerProvider.getInstance();
> server = solrServerProvider.getSolrServer(solrServerRef, null);//,
> //config.isAllowInitialisation() ?
> config.getIndexConfigurationName() : null);
> //Optional support for the nsPrefix service
> final NamespacePrefixService nsPrefixService;
> ServiceLoader<NamespacePrefixService> spsl =
> ServiceLoader.load(NamespacePrefixService.class);
> Iterator<NamespacePrefixService> it = spsl.iterator();
> if(it.hasNext()){
> nsPrefixService = it.next();
> } else {
> nsPrefixService = null;
> }
> yard = new SolrYard(server, config, nsPrefixService);
> }
>
>
>
> This code was working perfectly, till the latest libraries are fetched
> from maven. Kindly let me know in case I am missing something?
>
>
>
>