Hi Manish Aggarwal

Sorry for the late replay, but I was offline the whole last week.

The above Exception indicates, that you try to use a Solr 4 index with
Solr 3.6 libs in the classpath. I think this is because you use the
release version of o.a.stanbol.commons.solr.* that do use Solr 3.6.

In this case you will also need to use a dbpedia.solrindex.zip that
was build with a Entityhub Indexing tool version that was still using
Solr 3.6.


best
Rupert

On Fri, Jul 12, 2013 at 12:29 PM, Manish Aggarwal <mani.i...@gmail.com> wrote:
> A typo in my previous mail ..
>
>  "please note that I unzipped a valid dbpedia.solrindex.zip file at
> location ${basedir}/target/indexes/default"
>
>
> Also, this is how I was initializing SolrYard for version 0.12.0-SNAPSHOT
> where things were working ....
>
>
>    @BeforeClass
>     public static final void initYard() throws YardException, IOException {
>         String prefix = System.getProperty("basedir") == null ? "." :
> "${basedir}";
>         String solrServerDir = prefix + TEST_INDEX_REL_PATH;
>         log.info("Test Solr Server Directory: " + solrServerDir);
>         SolrYardConfig config = new SolrYardConfig(TEST_YARD_ID,
> TEST_SOLR_CORE_NAME);
>         config.setName("Solr Yard Test");
>         config.setDescription("The Solr Yard instance used to execute the
> Unit Tests defined for the Yard Interface");
>         config.setAllowInitialisation(false);
>         System.setProperty(ManagedSolrServer.MANAGED_SOLR_DIR_PROPERTY,
> solrServerDir);
>         IndexReference solrServerRef =
> IndexReference.parse(config.getSolrServerLocation());
>         solrServerProvider =
> StandaloneEmbeddedSolrServerProvider.getInstance();
>         SolrServer server = solrServerProvider.getSolrServer(solrServerRef,
>             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);
>     }
>
>
> There is a way (in version 0.12.0-SNAPSHOT as shown above) to pass SolrServer
> in SolrYard constructor. But it is not present in 0.11.0 version, how to
> achieve the same for version 0.11.0.
>
>
>
>
>
>
> On Fri, Jul 12, 2013 at 3:45 PM, Manish Aggarwal <mani.i...@gmail.com>wrote:
>
>> Hi Rupert,
>>
>> I got it working for version 0.12.0-SNAPSHOT, but as version 0.12.0 is
>> still not available through maven repository, I switched to version 0.11.0
>> which seems to be quite different.
>>
>> Here is what I am doing for version 0.11.0 ...
>>
>>     public static final String TEST_YARD_ID = "testYard";
>>     public static final String TEST_SOLR_CORE_NAME = "dbpedia";
>>     protected static final String TEST_INDEX_REL_PATH = File.separatorChar
>> + "target" + File.separatorChar
>>                                                         +
>> ManagedSolrServer.DEFAULT_SOLR_DATA_DIR;
>>     private static final Logger log =
>> LoggerFactory.getLogger(SolrYardTest.class);
>>
>>     @BeforeClass
>>     public static final void initYard() throws YardException {
>>         // get the working directory
>>         // use property substitution to test this feature!
>>         String prefix = System.getProperty("basedir") == null ? "." :
>> "${basedir}";
>>         String solrServerDir = prefix + TEST_INDEX_REL_PATH;
>>         log.info("Test Solr Server Directory: " + solrServerDir);
>>         System.setProperty(ManagedSolrServer.MANAGED_SOLR_DIR_PROPERTY,
>> solrServerDir);
>>         SolrYardConfig config = new SolrYardConfig(TEST_YARD_ID,
>> TEST_SOLR_CORE_NAME);
>>         config.setName("Solr Yard Test");
>>         config.setDescription("The Solr Yard instance used to execute the
>> Unit Tests defined for the Yard Interface");
>>         //use the default Solr Index configuration for this tests
>>         config.setDefaultInitialisation(false);
>>         // create the Yard used for the tests
>>         yard = new SolrYard(config);
>>     }
>>     @Override
>>     protected Yard getYard() {
>>         return yard;
>>     }
>>    @Test
>>     public void testFieldQuery() throws YardException {
>>         Yard yard = getYard();
>>         String field = "rdfs:label";
>>         TextConstraint tc = new TextConstraint("sachin tendulkar",
>> PatternType.wildcard, false, "en");
>>         FieldQuery query = yard.getQueryFactory().createFieldQuery();
>>         query.addSelectedField(field);
>>         query.addSelectedField(NamespaceEnum.rdf + "type");
>>         query.setOffset(0);
>>         query.setLimit(5);
>>         query.setConstraint(field, tc);
>>         QueryResultList<Representation> results =
>> yard.findRepresentation(query);
>>         Representation result;
>>         Iterator<Representation> it = results.iterator();
>>         while ( it.hasNext() ) {
>>                 result = it.next();
>>                 log.info("ID: " + result.getId());
>>                 Iterator<Object> type_it =  result.get(NamespaceEnum.rdf +
>> "type");
>>                 while (type_it.hasNext() ) {
>>                         log.info("type: " + type_it.next());
>>                 }
>>         }
>>   }
>>
>>
>>
>>
>> And I am getting the following error (also please note that I unzipped a
>> valid dbpedia.solrindex.zip file at location ${basedir}/target/indexes ) ..
>>
>> -------------------------------------------------------
>>  T E S T S
>> -------------------------------------------------------
>>
>> Running org.apache.stanbol.entityhub.yard.solr.SolrYardTest
>> 15:20:46,914  INFO SolrYardTest:77 - Test Solr Server Directory:
>> ${basedir}/target/indexes
>> 15:20:47,217  WARN SolrConfig:148 - <indexDefaults> and <mainIndex>
>> configuration sections are deprecated (but still work). Please use
>> <indexConfig> instead.
>> 15:20:49,122  INFO SolrYard:709 -  ... initialise new SolrDirectory Index
>> with name dbpedia by using Index Configuration dbpedia
>> 15:20:49,226 ERROR SolrYard:474 - Exception while checking SolrIndex
>> 'dbpedia' on ManagedSolrServer 'default'!
>> java.lang.IllegalStateException: Unable to copy default configuration for
>> Solr Index dbpedia to the configured path
>> /Users/managgar/projects/stanbol/stanbol/entityhub/yard/solr/target/indexes/default
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.updateCore(StandaloneManagedSolrServer.java:498)
>>  at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.updateIndex(StandaloneManagedSolrServer.java:407)
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.createSolrIndex(StandaloneManagedSolrServer.java:249)
>>  at
>> org.apache.stanbol.commons.solr.managed.standalone.DefaultStandaloneManagedSolrServerWrapper.createSolrIndex(DefaultStandaloneManagedSolrServerWrapper.java:60)
>>  at
>> org.apache.stanbol.entityhub.yard.solr.impl.SolrYard.createSolrIndex(SolrYard.java:712)
>>
>>     ....
>>     ....
>>     ....
>> at
>> org.apache.maven.surefire.booter.ProviderFactory$ProviderProxy.invoke(ProviderFactory.java:166)
>> at
>> org.apache.maven.surefire.booter.ProviderFactory.invokeProvider(ProviderFactory.java:86)
>>  at
>> org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:101)
>> at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:74)
>> Caused by: org.apache.solr.common.SolrException: Invalid
>> luceneMatchVersion 'LUCENE_42', valid values are: [LUCENE_20, LUCENE_21,
>> LUCENE_22, LUCENE_23, LUCENE_24, LUCENE_29, LUCENE_30, LUCENE_31,
>> LUCENE_32, LUCENE_33, LUCENE_34, LUCENE_35, LUCENE_36, LUCENE_CURRENT] or a
>> string in format 'V.V'
>>  at org.apache.solr.core.Config.parseLuceneVersionString(Config.java:353)
>> at org.apache.solr.core.Config.getLuceneVersion(Config.java:337)
>>  at org.apache.solr.core.SolrConfig.<init>(SolrConfig.java:140)
>> at org.apache.solr.core.CoreContainer.create(CoreContainer.java:452)
>>  at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.registerCore(StandaloneManagedSolrServer.java:464)
>> at
>> org.apache.stanbol.commons.solr.managed.standalone.StandaloneManagedSolrServer.updateCore(StandaloneManagedSolrServer.java:495)
>>  ... 29 more
>> Caused by: java.lang.IllegalArgumentException: No enum const class
>> org.apache.lucene.util.Version.LUCENE_42
>> at java.lang.Enum.valueOf(Enum.java:196)
>>  at org.apache.lucene.util.Version.valueOf(Version.java:33)
>> at org.apache.solr.core.Config.parseLuceneVersionString(Config.java:351)
>>  ... 34 more
>> 15:20:49,230  INFO SolrYard:478 - Activated SolrYard testYard
>>
>>
>>
>> Tests in error:
>>   testFieldQuery(org.apache.stanbol.entityhub.yard.solr.SolrYardTest):
>> Unable to copy default configuration for Solr Index dbpedia to the
>> configured path
>> /Users/managgar/projects/stanbol/stanbol/entityhub/yard/solr/target/indexes/default
>>
>> testStoreRepresentation(org.apache.stanbol.entityhub.yard.solr.SolrYardTest):
>> Unable to copy default configuration for Solr Index dbpedia to the
>> configured path stanbol/entityhub/yard/solr/target/indexes/default
>>
>> testStoreRepresentation(org.apache.stanbol.entityhub.yard.solr.SolrYardTest):
>> Unable to copy default configuration for Solr Index dbpedia to the
>> configured path stanbol/entityhub/yard/solr/target/indexes/default
>> ...
>> ...
>>
>>
>>
>> What I am doing wrong? How to initialize a SolrYard with the existing
>> dbpedia index??
>>
>> Thanks in advance!!
>>
>> Regards,
>> Manish
>>
>>
>>
>>
>> On Wed, Jul 10, 2013 at 7:52 PM, Rupert Westenthaler <
>> rupert.westentha...@gmail.com> wrote:
>>
>>> Hi Manish,
>>>
>>> I think you need to use the full URI for rdfs:label. QNAME support is
>>> implemented on the RESTful service layer and not supported when using
>>> the Java API.
>>>
>>> So changing
>>>
>>>      String field = NamespaceEnum.rdfs + "label";
>>>
>>> should solve your issue (assuming that the initialization with the
>>> dbpedia index was successful)
>>>
>>> best
>>> Rupert
>>>
>>> On Wed, Jul 10, 2013 at 4:00 PM, Manish Aggarwal <mani.i...@gmail.com>
>>> wrote:
>>> > Hi,
>>> >
>>> > I am trying to use the entityhub/yard/solr module to directly query the
>>> > dbpedia.solrindex.
>>> > I have unzipped the dbpedia.solrindex.zip file
>>> > in entityhub/yard/solr/target/indexes/default folder.
>>> >
>>> > And modified the Solryardtest.java as given below but unable to find any
>>> > results. Am I missing something?
>>> >
>>> >
>>> >
>>> > public static final String TEST_SOLR_CORE_NAME = "dbpedia";
>>> >
>>> >
>>> > @Test
>>> >
>>> >     public void testFieldQuery() throws YardException {
>>> >
>>> >         Yard yard = getYard();
>>> >
>>> >         String field = "rdfs:label";
>>> >
>>> >
>>> >         TextConstraint tc = new TextConstraint("Roger Federer",
>>> > PatternType.wildcard, false, "en");
>>> >
>>> >         FieldQuery query = yard.getQueryFactory().createFieldQuery();
>>> >
>>> >         query.addSelectedField(field);
>>> >
>>> >         query.setOffset(0);
>>> >
>>> >         query.setLimit(10);
>>> >
>>> >         query.setConstraint(field, tc);
>>> >
>>> >         QueryResultList<Representation> results = yard.find(query);
>>> >
>>> >         Representation result;
>>> >
>>> >         Iterator<Representation> it = results.iterator();
>>> >
>>> >         log.info("Number of results: " + results.size());
>>> >
>>> >    }
>>>
>>>
>>>
>>> --
>>> | Rupert Westenthaler             rupert.westentha...@gmail.com
>>> | Bodenlehenstraße 11                             ++43-699-11108907
>>> | A-5500 Bischofshofen
>>>
>>
>>



-- 
| Rupert Westenthaler             rupert.westentha...@gmail.com
| Bodenlehenstraße 11                             ++43-699-11108907
| A-5500 Bischofshofen

Reply via email to