2016-04-27 3 views
1

Я пытаюсь позвонить в службу IBM Watson через вызов REST в Java. У меня есть веб-проект в Eclipse, который публикуется через Bluemix Tools. Я также использую файлы .jar. Но когда я пытаюсь простой код, как:Попытка позвонить в службу переводов Watson

LanguageTranslation service = new LanguageTranslation(); 
service.setUsernameAndPassword("{username}","{password}"); 

List <IdentifiedLanguage> langs = service.identify("this is a test"); 
System.out.println(langs); 

Я получаю это исключение:

Unable to extract the trust manager on [email protected], sslSocketFactory is class com.ibm.jsse2.SSLSocketFactoryImpl 
[WARNING ] Application {http://webapp.aw/}ResourceServlet has thrown exception, unwinding now 
[WARNING ] Exception in handleFault on interceptor o[email protected]ac51d486 
Unable to extract the trust manager on [email protected], sslSocketFactory is class com.ibm.jsse2.SSLSocketFactoryImpl 
Unable to extract the trust manager on [email protected], sslSocketFactory is class com.ibm.jsse2.SSLSocketFactoryImpl 
+0

Какие учетные данные вы используете для «имени пользователя» и «пароля»? Учетная запись Bluemix или api_key для AlchemyAPI? – briadeus

+0

Я использую учетные данные из учетной записи Bluemix. Я использую службу языковых переводов, а не AlchemyAPI. – San

+0

. Посмотрите на [это] (https://github.com/watson-developer-cloud/java-sdk?cm_mc_uid=56417368661114344631188&cm_mc_sid_50200000=1461763559#getting-the-service-credentials) , > «Учетные данные службы отличаются от имени пользователя и пароля учетной записи Bluemix» – briadeus

ответ

0

Там, кажется, некоторая несовместимость с JVM, используемой на Bluemix и эта последняя (3.0.0 .RC1) версия библиотеки.

Я могу запустить образец кода локально просто отлично. Просто не на Bluemix.

Мой обходной путь заключается в использовании более старую версию 2.10 библиотеки:

https://github.com/watson-developer-cloud/java-sdk/releases/tag/java-sdk-2.10.0

Все отлично там работает (однако вы должны удалить .Execute() от конца перевода вызова будет совместимый со старой библиотекой).

+0

выглядит так, будто это было объявлено как ошибка. https://github.com/watson-developer-cloud/java-sdk/issues/264 –

+0

Большое спасибо. Код теперь работает со старой библиотекой 2.10! – San

1

Я думаю, что вы можете иметь устаревший файл JAR. Можете ли вы попробовать загрузить последнюю версию с here.

После того, как вы сделали это, добавьте файл JAR в путь сборки проекта, и попробовать это:

LanguageTranslation service = new LanguageTranslation(); 
service.setUsernameAndPassword("username", "password"); 

ServiceCall<List<IdentifiedLanguage>> langs = service.identify("this is a test"); 
System.out.println(langs.execute()); 
+0

Извините, для меня это не работало. Я получаю то же исключение – San

+0

Хорошо, вы можете проверить, что вы захватываете имя пользователя и пароль из [здесь] (http://i.imgur.com/WBTvUI0.png), и если да, возможно, попробуйте удалить экземпляр службы и создание нового. – farhan3

Смежные вопросы