IBM Watson — служба классификатора естественного языка (Java SDK) — метод deleteClassifier() не удаляет классификатор

Я пытаюсь вызвать метод deleteClassifier() в службе классификатора естественного языка на платформе IBM Watson, операция завершается, но классификатор не удаляется. Вот мой код и вывод:

Код:

NaturalLanguageClassifier service = new NaturalLanguageClassifier();
service.setUsernameAndPassword("xxxxxxx", "yyyyyyy");

System.out.println("Before deleting: ");
Classifier classifier;
classifier = service.getClassifier("90e7acx197-nlc-38920").execute();
System.out.println(classifier);

service.deleteClassifier("90e7acx197-nlc-38920");

System.out.println("After deleting: ");
classifier = service.getClassifier("90e7acx197-nlc-38920").execute();
System.out.println(classifier);

Выход:

Перед удалением:

Apr 18, 2017 7:16:08 PM okhttp3.internal.platform.Platform log
INFO: --> GET https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/90e7acx197-nlc-38920 http/1.1
Apr 18, 2017 7:16:08 PM okhttp3.internal.platform.Platform log
INFO: <-- 200 OK https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/90e7acx197-nlc-38920 (167ms, unknown-length body)

{
  "classifier_id": "90e7acx197-nlc-38920",
  "language": "en",
  "name": "TutorialClassifier",
  "status": "Available",
  "created": "2017-04-18T01:26:14.630",
  "status_description": "The classifier instance is now available and is ready to take classifier requests.",
  "url": "https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/90e7acx197-nlc-38920"
}

После удаления:

Apr 18, 2017 7:16:08 PM okhttp3.internal.platform.Platform log
INFO: --> GET https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/90e7acx197-nlc-38920 http/1.1
Apr 18, 2017 7:16:09 PM okhttp3.internal.platform.Platform log
INFO: <-- 200 OK https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/90e7acx197-nlc-38920 (142ms, unknown-length body)

{
  "classifier_id": "90e7acx197-nlc-38920",
  "language": "en",
  "name": "TutorialClassifier",
  "status": "Available",
  "created": "2017-04-18T01:26:14.630",
  "status_description": "The classifier instance is now available and is ready to take classifier requests.",
  "url": "https://gateway.watsonplatform.net/natural-language-classifier/api/v1/classifiers/90e7acx197-nlc-38920"
}

Поднял _JAVA_OPTIONS: -Xmx512M -Xms512M

Я делаю что-то не так здесь?


person Lalit    schedule 18.04.2017    source источник


Ответы (1)


Для вызова deleteClassifier необходимо использовать .execute()

Добавьте .execute() к

service.deleteClassifier("90e7acx197-nlc-38920");

Метод ниже удалит ваш классификатор

service.deleteClassifier("90e7acx197-nlc-38920").execute();
person German Attanasio    schedule 30.04.2017
comment
Большое спасибо. Это работает. Прочитав ваш ответ, я вернулся к документации и понял, что пропустил часть .execute() или, может быть, тогда я каким-то образом попал в старую документацию. В любом случае, еще раз спасибо за вашу помощь. - person Lalit; 04.05.2017