Quantcast
Channel: VMware Communities : Discussion List - VMware {code}
Viewing all articles
Browse latest Browse all 2738

Cannot retrieve service content using com.vmware.vim25.VimService.getVimPort() from vSphere html SDK

$
0
0

Hi laurentsd, we met a serious problem if we tried to get service content using vim25 in Java service when developing our plugin in vSphere HTML5 client(html-client-sdk: 5097204), the following screenshot is where we catch the exception in our code:

3.PNG

and the error messages are like this in vsphere_client_virgo.log:

[2017-05-05T09:48:02.709+08:00] [ERROR] http-bio-9443-exec-13         com.vmware.samples.vspherewssdk.ssl.ThumbprintTrustManager        Server certificate chain is not trusted and thumbprint doesn't match

[2017-05-05T09:48:02.731+08:00] [ERROR] http-bio-9443-exec-13         com.emc.sample.services.SdkTraversalUtilities                     getServiceContent error:  com.sun.xml.internal.ws.client.ClientTransportException: HTTP transport error: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: Server certificate chain is not trusted and thumbprint doesn't match

  at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:117)

  at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.process(HttpTransportPipe.java:208)

  at com.sun.xml.internal.ws.transport.http.client.HttpTransportPipe.processRequest(HttpTransportPipe.java:130)

  at com.sun.xml.internal.ws.transport.DeferredTransportPipe.processRequest(DeferredTransportPipe.java:124)

  at com.sun.xml.internal.ws.api.pipe.Fiber.__doRun(Fiber.java:1121)

  at com.sun.xml.internal.ws.api.pipe.Fiber._doRun(Fiber.java:1035)

  at com.sun.xml.internal.ws.api.pipe.Fiber.doRun(Fiber.java:1004)

  at com.sun.xml.internal.ws.api.pipe.Fiber.runSync(Fiber.java:862)

  at com.sun.xml.internal.ws.client.Stub.process(Stub.java:448)

  at com.sun.xml.internal.ws.client.sei.SEIStub.doProcess(SEIStub.java:178)

  at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:93)

  at com.sun.xml.internal.ws.client.sei.SyncMethodHandler.invoke(SyncMethodHandler.java:77)

  at com.sun.xml.internal.ws.client.sei.SEIStub.invoke(SEIStub.java:147)

  at com.sun.proxy.$Proxy736.retrieveServiceContent(Unknown Source)

  at com.emc.sample.services.SdkTraversalUtilities.getServiceContent(SdkTraversalUtilities.java:69)

  at com.emc.sample.services.UserSessionInfoServiceImpl.buildUserSessionDetailsInfo(UserSessionInfoServiceImpl.java:83)

  at com.emc.sample.services.UserSessionInfoServiceImpl.buildUserSessionDetailsWithMultiIps(UserSessionInfoServiceImpl.java:65)

  at com.emc.sample.services.UserSessionInfoServiceImpl.getAllUserSessionsWithMultiIps(UserSessionInfoServiceImpl.java:41)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

  at java.lang.reflect.Method.invoke(Method.java:497)

  at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:319)

  at org.eclipse.gemini.blueprint.service.importer.support.internal.aop.ServiceInvoker.doInvoke(ServiceInvoker.java:56)

  at org.eclipse.gemini.blueprint.service.importer.support.internal.aop.ServiceInvoker.invoke(ServiceInvoker.java:60)

  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

  at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)

  at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)

  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

  at org.eclipse.gemini.blueprint.service.importer.support.LocalBundleContextAdvice.invoke(LocalBundleContextAdvice.java:57)

  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

  at org.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)

  at org.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)

  at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)

  at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)

  at com.sun.proxy.$Proxy740.getAllUserSessionsWithMultiIps(Unknown Source)

  at com.emc.sample.mvc.ServicesController.getUserSessionDetails(ServicesController.java:66)

  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)

  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)

  at java.lang.reflect.Method.invoke(Method.java:497)

  at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:219)

  at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)

  at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:100)

  at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:604)

  at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:565)

  at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:80)

  at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:923)

  at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:852)

  at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:882)

  at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:778)

  at javax.servlet.http.HttpServlet.service(HttpServlet.java:735)

  at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

  at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

  at com.vmware.vise.security.SessionManagementFilter.doFilter(SessionManagementFilter.java:143)

  at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)

  at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)

  at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)

  at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)

  at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:505)

  at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)

  at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)

  at org.apache.catalina.valves.RemoteIpValve.invoke(RemoteIpValve.java:683)

  at org.eclipse.virgo.web.tomcat.support.ApplicationNameTrackingValve.invoke(ApplicationNameTrackingValve.java:33)

  at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)

  at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)

  at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:423)

  at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1079)

  at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:620)

  at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:318)

  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)

  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)

  at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)

  at java.lang.Thread.run(Thread.java:745)

Caused by: javax.net.ssl.SSLHandshakeException: java.security.cert.CertificateException: Server certificate chain is not trusted and thumbprint doesn't match

  at sun.security.ssl.Alerts.getSSLException(Alerts.java:192)

  at sun.security.ssl.SSLSocketImpl.fatal(SSLSocketImpl.java:1949)

  at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:302)

  at sun.security.ssl.Handshaker.fatalSE(Handshaker.java:296)

  at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1506)

  at sun.security.ssl.ClientHandshaker.processMessage(ClientHandshaker.java:216)

  at sun.security.ssl.Handshaker.processLoop(Handshaker.java:979)

  at sun.security.ssl.Handshaker.process_record(Handshaker.java:914)

  at sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:1062)

  at sun.security.ssl.SSLSocketImpl.performInitialHandshake(SSLSocketImpl.java:1375)

  at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1403)

  at sun.security.ssl.SSLSocketImpl.startHandshake(SSLSocketImpl.java:1387)

  at sun.net.www.protocol.https.HttpsClient.afterConnect(HttpsClient.java:559)

  at sun.net.www.protocol.https.AbstractDelegateHttpsURLConnection.connect(AbstractDelegateHttpsURLConnection.java:185)

  at sun.net.www.protocol.http.HttpURLConnection.getOutputStream0(HttpURLConnection.java:1282)

  at sun.net.www.protocol.http.HttpURLConnection.getOutputStream(HttpURLConnection.java:1257)

  at sun.net.www.protocol.https.HttpsURLConnectionImpl.getOutputStream(HttpsURLConnectionImpl.java:250)

  at com.sun.xml.internal.ws.transport.http.client.HttpClientTransport.getOutput(HttpClientTransport.java:104)

  ... 77 common frames omitted

Caused by: java.security.cert.CertificateException: Server certificate chain is not trusted and thumbprint doesn't match

  at com.vmware.samples.vspherewssdk.ssl.ThumbprintTrustManager.checkThumbprint(ThumbprintTrustManager.java:75)

  at com.vmware.samples.vspherewssdk.ssl.ThumbprintTrustManager.checkServerTrusted(ThumbprintTrustManager.java:48)

  at sun.security.ssl.AbstractTrustManagerWrapper.checkServerTrusted(SSLContextImpl.java:922)

  at sun.security.ssl.ClientHandshaker.serverCertificate(ClientHandshaker.java:1488)

  ... 90 common frames omitted

 

We have no workarounds for this issue, and don't know what is the root cause for it. Can you give us any suggestions or comments for this problem?

 

And we provide our sample code based on plugin-seed-0.9.5(The upload sample-seed.zip attachment, contains source code, and a folder covered each .war and .jar package), can you help us check this issue?

If you deploy our plugin package in virgo server, and refer to the following screenshots to reproduce the problem:

1.PNG

2.PNG


Viewing all articles
Browse latest Browse all 2738

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>