[
http://issues.apache.org/jira/browse/LUCENE-632?page=comments#action_12460995 ]
f commented on LUCENE-632:
--------------------------
i still have the problem with null pointer exceptions on creating a spell index
... first i thought its a problem with the php jni bridge i use. But after i
created a java example it didnt work either. For preventing parametre
missspellings or something like this i hardcoded the values in the example.
import java.io.IOException;
import org.apache.lucene.index.IndexReader;
import org.apache.lucene.index.IndexWriter;
import org.apache.lucene.search.spell.Dictionary;
import org.apache.lucene.search.spell.LuceneDictionary;
import org.apache.lucene.search.spell.SpellChecker;
import org.apache.lucene.store.Directory;
import org.apache.lucene.store.FSDirectory;
public class DidYouMeanIndexer {
private static final String DEFAULT_FIELD = "txt_name";
public void createSpellIndex() throws IOException
{
IndexReader indexReader = null;
try
{ boolean create = false;
Directory orgindex =
FSDirectory.getDirectory("/var/www/localhost/htdocs/lib/suche/data/index/",
create);
Directory spellindex =
FSDirectory.getDirectory("/var/www/localhost/htdocs/lib/suche/data/didyoumean/",
create);
indexReader = IndexReader.open(orgindex);
new IndexWriter(orgindex, null, true).close();
Dictionary dictionary = new LuceneDictionary(indexReader,
"txt_name");
SpellChecker spellChecker = new SpellChecker(spellindex);
spellChecker.indexDictionary(dictionary);
}
finally
{ if (indexReader != null)
{ indexReader.close();
}
}
}
public static void main(String[] args)
{
DidYouMeanIndexer obj = new DidYouMeanIndexer();
try
{ obj.createSpellIndex();
}
catch(IOException exception)
{
}
}
}
The next step i did was debugging the behaviour of the worditerator which i got
from the LuceneDictionary. But it didnt get a word. The index is well set up
with one document in it with two fields. The txt_name field is tokened indexed
and has a termvector. The solution of Karl Wettin didnt the job for me ;)
This problem exists on my system with lucene 1.9.1 and with 2.0.1-dev
I hope you have some ideas ;)
scnr
> The creation of a spell index from a LuceneDictionary via
> SpellChecker.indexDictionary (Dictionary dict) fails starting with 1.9.1 (up
> to current svn version)
> --------------------------------------------------------------------------------------------------------------------------------------------------------------
>
> Key: LUCENE-632
> URL: http://issues.apache.org/jira/browse/LUCENE-632
> Project: Lucene - Java
> Issue Type: Bug
> Components: Other
> Affects Versions: 1.9, 2.0.0
> Reporter: Karsten Dello
> Priority: Minor
> Fix For: 2.0.0
>
> Attachments: lazy_searcher.diff
>
>
> Two different errors in 1.9.1/2.0.0 and current svn version.
> 1.9.1/2.0.0:
> at the end of indexDictionary (Dictionary dict)
> the IndexReader-instance reader is closed.
> This causes a NullpointerException because reader has not been initialized
> before (neither in that method nor in the constructor).
> Uncommenting this line (reader.close()) seems to resolve that issue.
> current svn:
> the constructor tries to create an IndexSearcher-instance for the specified
> path;
> as there is no index in that path - it is not created yet - an exception is
> thrown.
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]