我试图通过Java中的REST调用来调用IBM Watson Service。我有一个通过Bluemix Tools发布的Eclipse中的Web项目。我还使用.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

最佳答案

与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()才能与较早的库兼容)。

关于java - 尝试致电Watson Translation Service,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36891082/

10-14 15:19
查看更多