2015-04-19 2 views
1

Этот пример программы из Babelfy работает нормально в течение дня, и когда я побежал ее на следующий день я получаю эту ошибку:FileNotFoundException, ошибка соединения URL, Babelfy, Java

Исключение в потоке «основной» java.io .FileNotFoundException: http://babelfy.org/rest?text=He%20has%20a%20passion%20for%20music&key=%20&partMatching=false&lang=EN&format=json в sun.net.www.protocol.http.HttpURLConnection.getInputStream0 (Unknown Source) в sun.net.www.protocol.http.HttpURLConnection.getInputStream (Unknown Source) в it.uniroma1.lcl. babelfy.Babelfy.babelfy (Babelfy.java:95) at Example.main (Example.java:19)

Exa mple - это имя программы Java.

Вот код:

import it.uniroma1.lcl.babelfy.Babelfy; 
import it.uniroma1.lcl.babelfy.Babelfy.Matching; 
import it.uniroma1.lcl.babelfy.Babelfy.AccessType; 
import it.uniroma1.lcl.babelfy.data.Annotation; 
import it.uniroma1.lcl.babelfy.data.BabelSynsetAnchor; 
import it.uniroma1.lcl.babelnet.BabelNet; 
import it.uniroma1.lcl.babelnet.BabelSense; 
import it.uniroma1.lcl.babelnet.BabelSynset; 
import it.uniroma1.lcl.jlt.util.Language; 

public class Example 
{ 
public static void main(String[] args) throws Exception 
{ 
    Babelfy bfy = Babelfy.getInstance(AccessType.ONLINE); 
    BabelNet bn = BabelNet.getInstance(); 
    String word=" "; 
    String inputText = "He has a passion for music"; 
    Annotation annotations = bfy.babelfy(" ", inputText, Matching.EXACT, Language.EN); 
    System.out.println("inputText: "+inputText+"\nannotations:"); 
    for(BabelSynsetAnchor annotation : annotations.getAnnotations()) 
    { 
     word=annotation.getBabelSynset().getId(); 
     System.out.println(annotation.getAnchorText()+"\t"+word+"\t"+annotation.getBabelSynset()); 
     //BabelSynset by = bn.getSynsetFromId(("bn:03083790n")); 
    for (BabelSense sense : bn.getSynsetFromId((word))) 
    { 
     if(sense.getSource().toString().equals("WN")) 
      System.out.println("Sense: " + sense.getLemma()+ "\tSource: " + sense.getSource().toString()); 
    } 
    } 

} 
} 

Я добавил библиотеки как 0,9 и 1,0 версии Babelfy в путь сборки моего проекта Eclipse?

Можно ли найти причину ошибки?

ответ

1

Кажется, что Babelfy-API устарел. Он пытается подключиться к http://babelfy.org/rest, который is not available (anymore).

Версия 1.0 по-прежнему является текущей версией, поэтому, пожалуйста, удалите версию 0.9. Java может выбрать первую найденную версию, которая, вероятно, будет равна 0,9.

После удаления 0.9.jar вы должны иметь возможность сделать правильный вызов API.

+0

спасибо. Я выяснил это немного позже. Я пришел к тому же решению. –