1 Reply Latest reply on Sep 13, 2016 2:47 AM by _vladi_

    Registeration of web client plugin(flex-client-sdk) fails on 6.5 RC with "VKS KeyStore not available" error

    dhbtemp Novice

      Hi,
      I was just trying to develop our html bridge plugin on  6.5 RC, I was following the steps(and I had already checked all the steps) from:

      vsphere-client-sdk\flex-client-sdk\docs\SDK-Setup.html

       

      I completed the setup steps and did the vCenter Server registration. But when I  try to use https://localhost:9443/vsphere-client/ to login vSphere web client, it fails to connect to vCenter Server.


      I See some errors in vsphere-client-sdk\flex-client-sdk\vsphere-client\server\serviceability\logs\vsphere_client_virgo.log file :

       

      [2016-09-12T12:21:00.184+08:00] [ERROR] usage-data-collector-thread   c.v.p.c.a.solutionuser.SolutionUserAuthenticationConfig           Failed to load system wide VECS keystore. This will result in inability for CEIP to collect data and synchronize its consent state accross other VCs. Please file a SR for issue with the Customer Experience Improvement Program (CEIP) For details see the underlying error: java.security.KeyStoreException: VKS not found java.security.KeyStoreException: VKS not found
          at java.security.KeyStore.getInstance(KeyStore.java:616)
          at com.vmware.ph.ceip.authentication.keystore.VecsKeyStoreProvider$KeyStoreInstantiator.getInstance(VecsKeyStoreProvider.java:63)
          at com.vmware.ph.ceip.authentication.keystore.VecsKeyStoreProvider.loadKeyStore(VecsKeyStoreProvider.java:29)
          at com.vmware.ph.ceip.authentication.solutionuser.SolutionUserAuthenticationConfig.doInitializeConfiguration(SolutionUserAuthenticationConfig.java:112)
          at com.vmware.ph.ceip.authentication.solutionuser.SolutionUserAuthenticationConfig.initializeOnce(SolutionUserAuthenticationConfig.java:101)
          at com.vmware.ph.ceip.authentication.solutionuser.SolutionUserAuthenticationConfig.getSolutionKey(SolutionUserAuthenticationConfig.java:90)
          at com.vmware.ph.ceip.authentication.DsSessionSimulatorImpl$TokenProvider.createSolutionStsClient(DsSessionSimulatorImpl.java:274)
          at com.vmware.ph.ceip.authentication.DsSessionSimulatorImpl$TokenProvider.createToken(DsSessionSimulatorImpl.java:243)
          at com.vmware.ph.ceip.authentication.DsSessionSimulatorImpl.simulate(DsSessionSimulatorImpl.java:117)
          at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
          at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
          at java.lang.reflect.Method.invoke(Method.java:601)
          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.$Proxy427.simulate(Unknown Source)
          at com.vmware.vsphere.telemetry.cmc.CollectorAction.call(CollectorAction.java:95)
          at com.vmware.vsphere.telemetry.cmc.CollectorAction.call(CollectorAction.java:43)
          at com.vmware.vsphere.telemetry.cmc.CollectorLoop.runLoop(CollectorLoop.java:95)
          at com.vmware.vsphere.telemetry.cmc.CollectorLoop.access$100(CollectorLoop.java:21)
          at com.vmware.vsphere.telemetry.cmc.CollectorLoop$1.run(CollectorLoop.java:73)
          at java.lang.Thread.run(Thread.java:722)
      Caused by: java.security.NoSuchAlgorithmException: VKS KeyStore not available
          at sun.security.jca.GetInstance.getInstance(GetInstance.java:159)
          at java.security.Security.getImpl(Security.java:695)

          at java.security.KeyStore.getInstance(KeyStore.java:613)
          ... 32 common frames omitted

       

      My VMWARE_CFG_DIR is set to C:/ProgramData/VMware/vCenterServer/cfg/, and  store.jks, webclient.properties, ds.properties are set correctly.

       

      My development environment is :

        • flex-client-sdk :  vSphere Web Client 6.5.0 build 4234016

        • vCenter Server : 6.0 u2

        • Eclipse Java EE IDE: Juno

       

      Please let me know if you have any suggestions to resolve it.

       

      Regards,

       

      dinghb

        • 1. Re: Registeration of web client plugin(flex-client-sdk) fails on 6.5 RC with "VKS KeyStore not available" error
          _vladi_ Hot Shot
          VMware EmployeesvExpert

          Hi,

           

          It is normal not to have VECS keystore on your local setup - that's not a problem. The exception you provided just means no data for you customer experience will be sent to VMware.

           

          Please check the following:

          - store.jks is in C:\ProgramData\VMware\vCenterServer\cfg

          - webclient.properties is in C:\ProgramData\VMware\vCenterServer\cfg\vsphere-client

          - ds.properties is in C:\ProgramData\VMware\vCenterServer\cfg\vsphere-client\config

          - Your vCenter Server is up and running (not down)

          - The IP or URL of your vCenter Server is properly referenced in the webclient.properties

          - store.jks is the actual one downloaded from your vCenter Server

          If all this is met please regenerate the files using the dev-setup script from scratch and try again.

          If it still doesn't work please send your cfg folder privately (and/or obfuscating any private data) so I can have a look.

           

          Cheers,

          Vladimir