Jena crew:

I have Jena-Text pretty much working for what I want to do, but with
one caveat... it only seems to work with the Lucene RamDirectory.  If
I use a persistent dir, I don't find any documents being written to
the Lucene index.  Any help or suggestions are greatly appreciated.
Code sample follows:


---CODE---


package org.fogbeam.example.jenatext

import org.apache.jena.query.text.EntityDefinition
import org.apache.jena.query.text.TextDatasetFactory
import org.apache.jena.query.text.TextQuery
import org.apache.lucene.store.Directory
import org.apache.lucene.store.FSDirectory

import com.hp.hpl.jena.query.Dataset
import com.hp.hpl.jena.query.ReadWrite
import com.hp.hpl.jena.rdf.model.Model
import com.hp.hpl.jena.rdf.model.Resource
import com.hp.hpl.jena.rdf.model.Statement
import com.hp.hpl.jena.tdb.TDBFactory
import com.hp.hpl.jena.vocabulary.RDFS

class JenaTextMain6Write
{

    static main(args)
    {

        TextQuery.init();

        EntityDefinition entDef = new EntityDefinition("uri", "text",
RDFS.label.asNode()) ;

        // Lucene, in memory.
        Directory dir =  FSDirectory.open( new File( "jenastore/index" ) );

        // Join together into a dataset
        Dataset tdbDataset = TDBFactory.createDataset("jenastore/triples");
        Dataset ds = TextDatasetFactory.createLucene(tdbDataset, dir, entDef);


        try
        {

            ds.begin(ReadWrite.WRITE);

            Model m = ds.getDefaultModel();

            Resource rSubject = m.createResource(
"http://ontology.fogbeam.com/example/TestResource1"; );
            Resource rSubject2 = m.createResource(
"http://ontology.fogbeam.com/example/TestResource2"; );


            Statement s = m.createStatement(rSubject, RDFS.label,
"This is a Test Resource" );

            m.add( s );

            Statement s2 = m.createStatement(rSubject2, RDFS.label,
"Bratwurst Test" );

            m.add( s2 );

            ds.commit();

            dir.close();

        }
        catch( Exception e )
        {
            e.printStackTrace();
            ds.abort();
        }
        finally
        {
            if( ds != null )
            {
                ds.end();
            }
        }

        println "done";
    }

}

--- END CODE---



Phil
---
This message optimized for indexing by NSA PRISM

Reply via email to