You need to include the maxcent-3.0.0.jar file to your project as well. James
On 1/3/2012 7:31 AM, [email protected] wrote: > i have still the same error > > Im using open-nlp-tools1.50.jar and 1.5 models > > InputStream modelIn = new FileInputStream("en-ner-person.bin"); > > TokenNameFinderModel model = new TokenNameFinderModel(modelIn); > > NameFinderME nameFinder = new NameFinderME(model); > String[] split = input.split(" "); > Span nameSpans[] = nameFinder.find(split); > > > if (nameSpans == null || nameSpans.length == 0) > return; > > for (Span span : nameSpans) > { > StringBuilder buf = new StringBuilder(); > > for (int i = span.getStart(); i < span.getEnd(); i++) > { > buf.append(split[i]); > if(i != span.getEnd()) > buf.append(" "); > > } > System.out.println(buf.toString()); > } > > > > you can link me to the models maybe i wrong the page i suppose is this: > http://opennlp.sourceforge.net/models-1.5/ > and version this: > http://sourceforge.net/projects/opennlp/ > > error: > (class: opennlp/model/GenericModelReader, method: checkModelType signature: > ()V) Bad type in putfield/putstatic > java.lang.VerifyError: (class: opennlp/model/GenericModelReader, method: > checkModelType signature: ()V) Bad type in putfield/putstatic > at > opennlp.tools.util.model.GenericModelSerializer.create(GenericModelSerializer.java:35) > at > opennlp.tools.util.model.GenericModelSerializer.create(GenericModelSerializer.java:35) > at > opennlp.tools.util.model.GenericModelSerializer.create(GenericModelSerializer.java:31) > at opennlp.tools.util.model.BaseModel.<init>(BaseModel.java:135) > at > opennlp.tools.namefind.TokenNameFinderModel.<init>(TokenNameFinderModel.java:67) > > > > -- > [email protected] > Inviato con Sparrow (http://www.sparrowmailapp.com/?sig) > > > Il giorno martedì 3 gennaio 2012, alle ore 04.30, James Kosin ha scritto: > >> On 1/2/2012 5:20 PM, [email protected] >> (mailto:[email protected]) wrote: >>> >>> i have errors using openNLp you can tell me why ?? >>> >>> this is the code: >>> >>> InputStream modelIn = new FileInputStream(NLPModel/en-ner-person.bin"); >> >> ^^^ Here you are missing an opening quote character >>> >>> TokenNameFinderModel model = new TokenNameFinderModel(modelIn); >>> >>> modelIn.close(); >> ^^^ You don't need to close the input stream. The >> TokenNameFinderModel should be taking care of that. >>> NameFinderME nameFinder = new NameFinderME(model); >>> String[] split = input.split(" "); >>> Span nameSpans[] = nameFinder.find(split); >>> >>> nameFinder.clearAdaptiveData(); >> ^^^ This should be done before the nameFinder.find() call or not at all. >>> >>> if (nameSpans == null || nameSpans.length == 0) >>> return; >>> >>> for (Span span : nameSpans) >>> { >>> StringBuilder buf = new StringBuilder(); >>> >>> for (int i = span.getStart(); i < span.getEnd(); i++) >>> { >>> buf.append(split[i]); >>> if(i<span.getEnd()-1) >>> >> >> ^^^ This if statement would probably be better with (i != >> span.getEnd()) instead. >>> buf.append(" "); >>> >>> } >>> System.out.println(buf.toString()); >>> } >>> >>> >>> this is the error : >>> >>> >>> >>> (class: opennlp/model/GenericModelReader, method: checkModelType signature: >>> ()V) Bad type in putfield/putstatic >>> java.lang.VerifyError: (class: opennlp/model/GenericModelReader, method: >>> checkModelType signature: ()V) Bad type in putfield/putstatic >>> at >>> opennlp.tools.util.model.GenericModelSerializer.create(GenericModelSerializer.java:35) >>> at >>> opennlp.tools.util.model.GenericModelSerializer.create(GenericModelSerializer.java:31) >>> at opennlp.tools.util.model.BaseModel.<init>(BaseModel.java:135) >>> at >>> opennlp.tools.namefind.TokenNameFinderModel.<init>(TokenNameFinderModel.java:67) >>> at LangProcessing.processingWithOpenNLP(LangProcessing.java:237) >>> at OpenNLPJUnitTest.testHello(OpenNLPJUnitTest.java:33) >>> >> >> What version of OpenNLP are you using and did the download of the model >> succeed? >> >> Thanks, >> James >> >> > >
