试图打电话给沃森翻译服务

时间:2016-04-27 13:20:45

标签: java eclipse ibm-cloud ibm-watson

我试图通过Java中的REST调用来调用IBM Watson服务。我在Eclipse中有一个Web项目,它通过Bluemix Tools发布。我也使用.jar文件。但是,当我尝试一个简单的代码,如:

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 okhttp3.internal.Platform@ab895790, sslSocketFactory is class com.ibm.jsse2.SSLSocketFactoryImpl
[WARNING ] Application {http://webapp.aw/}ResourceServlet has thrown exception, unwinding now
[WARNING ] Exception in handleFault on interceptor org.apache.cxf.jaxrs.interceptor.JAXRSDefaultFaultOutInterceptor@ac51d486
Unable to extract the trust manager on okhttp3.internal.Platform@ab895790, sslSocketFactory is class com.ibm.jsse2.SSLSocketFactoryImpl
Unable to extract the trust manager on okhttp3.internal.Platform@ab895790, sslSocketFactory is class com.ibm.jsse2.SSLSocketFactoryImpl

2 个答案:

答案 0 :(得分: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());

答案 1 :(得分:0)

似乎与Bluemix上使用的JVM以及该库的最新版本(3.0.0.RC1)有些不兼容。

我可以在本地运行示例代码。只是不在Bluemix上。

我的解决方法是使用旧的2.10版本的库:

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

那里一切正常(但是你需要从翻译调用的末尾删除.execute()以与旧库兼容)。