|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Oct 2001
Città: Prov. di Frosinone
Messaggi: 948
|
[Java] Usare Wordnet
Ciao
Ho usato le librerie jwnl 1.3 (l'ultima versione, a quanto mi risulta) per integrare wordnet (2.0) nella mia applicazione. Il problema sorge a volte quando chiamo il metodo getDirectHypernyms della classe PointerUtils... in alcuni casi funziona tutto a meraviglia, in altri invece mi lancia un'eccezione java.lang.NullPointerException: Codice:
java.lang.NullPointerException
at net.didion.jwnl.data.PointerTarget.getPointers(PointerTarget.java:39)
at net.didion.jwnl.data.PointerTarget.getTargets(PointerTarget.java:53)
at net.didion.jwnl.data.SynsetProxy.getTargets(SynsetProxy.java:47)
at net.didion.jwnl.data.PointerUtils.getPointerTargets(PointerUtils.java:412)
at net.didion.jwnl.data.PointerUtils.getDirectHypernyms(PointerUtils.java:39)
at Supporto2.ipernomiDiretti(Esempio.java:92)
at Esempio.main(Esempio.java:229)
Non so, avrei pure una certa fretta (ho la consegna martedì), se qualcuno sa aiutarmi... Grazie |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2002
Messaggi: 4334
|
Magari fai vedere la riga incriminata:
Supporto2.ipernomiDiretti(Esempio.java:92)
__________________
|Java Base| |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Oct 2001
Città: Prov. di Frosinone
Messaggi: 948
|
Hai ragione
Codice:
/*Stampa, per ogni significato, gli ipernomi diretti*/
public void ipernomiDiretti(String parola) throws JWNLException
{
IndexWord lemma = Dictionary.getInstance().getIndexWord(POS.NOUN, parola);
//mi ricavo l'albero degli iperonimi per ogni senso
PointerTargetNode ptn;
Synset sy;
for(int nn=1; nn<(lemma.getSenseCount()+1); nn++){
System.out.println("\n-------------------------");
System.out.println("Significato: "+lemma.getSense(nn).getGloss());
try{
PointerTargetNodeList hypernyms = PointerUtils.getInstance().getDirectHypernyms(lemma.getSense(nn));
Iterator iter = hypernyms.iterator();
while(iter.hasNext()){
ptn = (PointerTargetNode)iter.next();
sy = ptn.getSynset();
System.out.println(" * "+sy.getGloss());
System.out.println(" - Ipernomi diretti: "+Supporto.cutParola(sy.toString()));
System.out.println();
}
}catch(NullPointerException e)
{System.out.println("Nessun ipernome");}
}
}//Fine ipernomi diretti
Non capisco perchè in alcuni casi vada ed in altri no.... |
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Oct 2001
Città: Prov. di Frosinone
Messaggi: 948
|
Tra l'altro ho trovato pure un file di esempio sul web, e fa esattamente come faccio io per ottenere gli ipernomi diretti...
Non credo di aver sbagliato qualche cosa, ma non capisco allora quale sia il problema. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 20:33.











|








