VMware {code} Community
mikemayors
Enthusiast
Enthusiast
Jump to solution

Exception thrown by SsoUtil: SSO admin service failure

I'm diagnosing an issue in an Enhanced Linked Mode environment running 6.0 update 1 (2 vCenters, same domain) where I'm getting the following exception when calling UserSessionService.getUserSession():

[ERROR] data-service-pool-2704       70000426 100010 200005 c.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl   There was an issue while extracting the list of system domains com.vmware.vise.vim.security.sso.exception.SsoServiceException: SSO admin service failure

  at com.vmware.vise.vim.security.sso.SsoUtil.getAdminService(SsoUtil.java:256)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.extractSystemDomains(UserSessionServiceImpl.java:179)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.getUserSession(UserSessionServiceImpl.java:156)

  at sun.reflect.GeneratedMethodAccessor496.invoke(Unknown Source)

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

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

  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.$Proxy503.getUserSession(Unknown Source)

Does anyone have any pointers on diagnosing this?  I could not find much information about this error in the SDK docs.  Thank you

- Mike

66 Replies
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Build 2559277 is vanilla 6.0 release. It doesn't have the issue. The problem starts with Patch 02 which your customer has.

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Build 3271482 corresponds to release 6.0 Patch 02.

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

Hey,

I've been trying to reproduce for about a day now.  I'm calling UserSessionService.getSession() in a loop every second. I also tried every half a second. Yesterday I specified no delay and just called getSession() in an infinite loop roughly 10,000 times in 10 minutes. I'll continue with this approach this afternoon but if you have other ideas I'm all ears.  The vCenter I'm using now is running update 2, which I hope still has this issue because that's all my IT department has for me Smiley Sad

(Version 6.0.0 Build 2997665)

Thanks again

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

You mean, you are trying to reproduce the problem without having applied the patch and you can't reproduce it? In other words, the same exception as before doesn't appear in the log? That's strange, because I'm reproducing it consistently exactly with a loop (a straight loop, without limiting it to once per second or half-second). I can see the exact same error in the log. However, when I apply the patch, the error no longer appears in the log. I deployed build 3271482 (release 6.0 Patch 02) and I'm testing on it, but you should get the same result in release 6.0 Update 2 because the code is the same there.

Can you, please, describe the original problem? Were you not able to get the UserSession session at all? Or were you getting it but you were also seeing the exception in the log? I examined the code, and I can see that when the following method gets executed:

at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.extractSystemDomains(UserSessionServiceImpl.java:179)

(as per the stack trace that you provided), the exception is caught and in this case an empty list of System Domains is returned, but this doesn't prevent the UserSession from being returned to the caller -- its 'systemDomains' field will be empty, but the rest should be okay. However, without the patch, the method certainly does leave authenticated sessions behind and this must be fixed because eventually the SSO server reaches the maximum number of sessions and it refuses to authenticate any further, which may cause problems in completely unrelated scenarios because the SSO server gets contacted in other places too and they may fail because of the exhaustion of authenticated sessions.

So, again, can you describe the exact problem you're experiencing? What are the symptoms?

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

The original problem was that UserSessionService.getUserSession() throws an SsoServiceException.  This prevented a user session from being returned to the caller (as you can see in the stack trace).

To reproduce I have created a Java service where UserSessionService is passed in via OSGI (same as you do in the sample apps).  In the Flex client I have a toggle button which starts off an infinite loop. In the loop I call a method on my Java service which then calls UserSessionService.getUserSession().  If I get an exception I log it and throw it back to the Flex client.  I've run this loop about 20,000 times and still have not hit an exception when calling UserSessionService.getUserSession().  The only difference I can see is that my vCenter is running 6.0 update 2 and our customer is running 6.0 patch 2.


Let me know if I misunderstood anything.



EDIT: Correction - calling UserSessionService.getUserSession()


Mike

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Okay, I'm looking at the code of method UserSessionService.getUserSession() and it basically does this:

try {

   ...

} catch (Exception e) {

   _logger.error("Failed to get the user session", e);

   return null;

}

Furthermore, method UserSessionServiceImpl.extractSystemDomains(), which is part of the stack trace you quoted earlier, does:

try {

   ...

} catch (Exception e) {

   _logger.error("There was an issue while extracting the list of system domains", e);

}

Neither of these can throw an exception that can propagate to the caller. (They can throw an Error or a plain Throwable, but we're not dealing with such here.) What you see in the log is just a message that there was an error, but in reality you will either get a null UserSession, or a UserSession in which field 'systemDomains' is empty.

By the way, I reproduced the problem by directly placing a loop around the try-catch block in method extractSystemDomains() -- the block which I quoted above. I ran a loop of 1,000 iterations but the actual error started to appear after much fewer iterations. I didn't bother to record how many, but maybe after 200-300 iterations. Don't quote me on that, though -- I might be wrong.

I'm quite surprised you can't reproduce the problem by doing remote invocations of UserSessionService.getUserSession(). And I'm even more surprised that you manage to get SsoServiceException thrown out of method getUserSession(). In fact, it's a checked exception and the method doesn't have any throws clause, so this makes the matter even more puzzling.

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

Aha! So it looks like we call getUserSession() which causes an exception to be thrown, is caught by UserSessionServiceImpl which then returns null. I just checked the logs and I'm seeing the exception.  Gonna try your patch now.

[2016-06-24T16:00:45.107-04:00] [ERROR] http-bio-9443-exec-5          c.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl   There was an issue while extracting the list of system domains com.vmware.vise.vim.security.sso.exception.SsoServiceException: SSO admin service failure

  at com.vmware.vise.vim.security.sso.SsoUtil.getAdminService(SsoUtil.java:256)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.extractSystemDomains(UserSessionServiceImpl.java:176)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.getUserSession(UserSessionServiceImpl.java:153)

  at sun.reflect.GeneratedMethodAccessor495.invoke(Unknown Source)

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

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

  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.$Proxy550.getUserSession(Unknown Source)

  at com.xxx.callGetSession(YYYImpl.java:183)

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

Ok. Good news: I reproduced the issue

Bad news: Even with the patch you supplied for UserSessionServiceImpl and the patch you supplied on the other thread ("SSO admin service failure" exception in vSphere 6.0.2) for SSOUtilInternal I'm still getting failures in the logs after hammering UserSessionService.getUserSession().  I'm now seeing the following error:

Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: interface com.vmware.vim.binding.sso.SessionManager is not visible from class loader

Do you have any ideas?  To be clear, your patch seems to have resolved the last error I was seeing - which is great! If this is a new issue I can go and start a new discussion and mark your reply as the answer for this discussion.

Here's the stack trace I'm seeing now:

[2016-06-24T19:47:30.329-04:00] [ERROR] http-bio-9443-exec-4          c.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl  There was an issue while extracting the list of system domains com.vmware.vise.vim.security.sso.exception.SsoServiceException: SSO admin service failure

  at com.vmware.vise.vim.security.sso.SsoUtil.getAdminService(SsoUtil.java:256)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.extractSystemDomains(UserSessionServiceImpl.java:180)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.getUserSession(UserSessionServiceImpl.java:156)

  at sun.reflect.GeneratedMethodAccessor299.invoke(Unknown Source)

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

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

  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.$Proxy524.getUserSession(Unknown Source)

  [Our Extension Package] .callGetSession(MyService.java:183)

  at sun.reflect.GeneratedMethodAccessor301.invoke(Unknown Source)

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

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

  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.$Proxy527.callGetSession(Unknown Source)

  at sun.reflect.GeneratedMethodAccessor300.invoke(Unknown Source)

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

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

  at flex.messaging.services.remoting.adapters.JavaAdapter.invoke(JavaAdapter.java:418)

  at com.vmware.vise.messaging.remoting.JavaAdapterEx.invoke(JavaAdapterEx.java:50)

  at flex.messaging.services.RemotingService.serviceMessage(RemotingService.java:183)

  at flex.messaging.MessageBroker.routeMessageToService(MessageBroker.java:1400)

  at flex.messaging.endpoints.AbstractEndpoint.serviceMessage(AbstractEndpoint.java:1011)

  at flex.messaging.endpoints.AbstractEndpoint$$FastClassByCGLIB$$1a3ef066.invoke(<generated>)

  at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)

  at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

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

  at org.springframework.flex.core.MessageInterceptionAdvice.invoke(MessageInterceptionAdvice.java:66)

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

  at org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:124)

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

  at org.springframework.aop.framework.Cglib2AopProxy$FixedChainStaticTargetInterceptor.intercept(Cglib2AopProxy.java:573)

  at com.vmware.vise.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$c774f9ac.serviceMessage(<generated>)

  at flex.messaging.endpoints.amf.MessageBrokerFilter.invoke(MessageBrokerFilter.java:103)

  at flex.messaging.endpoints.amf.LegacyFilter.invoke(LegacyFilter.java:158)

  at flex.messaging.endpoints.amf.SessionFilter.invoke(SessionFilter.java:44)

  at flex.messaging.endpoints.amf.BatchProcessFilter.invoke(BatchProcessFilter.java:67)

  at flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter.java:166)

  at flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.java:291)

  at com.vmware.vise.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$c774f9ac.service(<generated>)

  at org.springframework.flex.servlet.MessageBrokerHandlerAdapter.handle(MessageBrokerHandlerAdapter.java:109)

  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.doPost(FrameworkServlet.java:789)

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

  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 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:501)

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

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

  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:408)

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

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

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

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

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

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

Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: interface com.vmware.vim.binding.sso.SessionManager is not visible from class loader

  at java.util.concurrent.FutureTask.report(FutureTask.java:122)

  at java.util.concurrent.FutureTask.get(FutureTask.java:188)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl.authenticate(ClientMonitorImpl.java:89)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.getClientMonitor(SsoAdminServiceImpl.java:134)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.<init>(SsoAdminServiceImpl.java:110)

  at com.vmware.vise.vim.security.sso.SsoUtil.getAdminService(SsoUtil.java:252)

  ... 89 common frames omitted

Caused by: java.lang.IllegalArgumentException: interface com.vmware.vim.binding.sso.SessionManager is not visible from class loader

  at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:616)

  at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:592)

  at java.lang.reflect.WeakCache$Factory.get(WeakCache.java:244)

  at java.lang.reflect.WeakCache.get(WeakCache.java:141)

  at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:455)

  at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:738)

  at com.vmware.vim.vmomi.client.common.impl.ManagedObjectFactoryImpl.createManagedObject(ManagedObjectFactoryImpl.java:88)

  at com.vmware.vim.vmomi.client.http.impl.HttpClient.createStub(HttpClient.java:76)

  at com.vmware.vise.vim.commons.vmomi.ClientWithSharedHttpConfig.createStub(ClientWithSharedHttpConfig.java:66)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.processLogin(SsoAdminServiceImpl.java:145)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.access$300(SsoAdminServiceImpl.java:57)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl$SolutionUserAuthenticator.authenticate(SsoAdminServiceImpl.java:497)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl$SolutionUserAuthenticator.authenticate(SsoAdminServiceImpl.java:481)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl$1.call(ClientMonitorImpl.java:209)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl$1.call(ClientMonitorImpl.java:206)

  at java.util.concurrent.FutureTask.run(FutureTask.java:262)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl.authenticate(ClientMonitorImpl.java:74)

  ... 92 common frames omitted

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Apparently something goes wrong with the thread's context class loaders in your environment. I don't get such things here. If it's okay by you, I'd like to do the following:

I will prepare two sets of .jar files for you:

1. Set #1 will just contain additional logging without any fix.

2. Set #2 will contain a fix.

You'll have to apply Set #1 before you apply the fix in Set #2. Set #1 will log the class loader which is being used when the error occurs. That is, when trying to load com.vmware.vim.binding.sso.SessionManager. I will prefix the special log messages with a triple tilde (~~~). Please, when the error occurs, locate these messages in the log and post them here (or send me a private message, if you prefer). Then, apply the fix from Set #2 and check if the problem will be fixed.

Does this sound okay by you? Should I proceed with creating the sets?

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

That's fine by me.  Go ahead and create the sets of jars. Also, let me know if you'd like me to enable debug logging prior to restarting the web client service, or if INFO is good enough.

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Okay, attached the sets. Set #1 contains only one jar, actually. You should copy the jars to directory [VIRGO_HOME]/repository/usr, then you should set the owner of the .jars to be user 'vsphere-client' and you should make the .jars readable by all users (e.g. access mode 'rwxr--r--'), just in case. Then you should restart the Web Client.

The logging will contain a stack trace. It will look scary, but it's not an error, just logging. Please, locate the actual class loading error and then see the preceding message that contains "~~~" (without the quotes) -- this message should say which class loader is being used.

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

Is this the message you're looking for?

[2016-06-27T15:18:17.868-04:00] [INFO ] data-service-pool-148        70000107 100004 200001 com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl         ~~~ The thread context class loader is org.eclipse.gemini.web.tomcat.internal.loading.BundleWebappClassLoader@22d10bf6 (com.vmware.vsphere.client.endpointsapp_6.0.0 [240]) java.lang.Exception: DummyException

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.logClassLoader(SsoAdminServiceImpl.java:574)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.processLogin(SsoAdminServiceImpl.java:146)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.access$300(SsoAdminServiceImpl.java:58)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl$SolutionUserAuthenticator.authenticate(SsoAdminServiceImpl.java:512)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl$SolutionUserAuthenticator.authenticate(SsoAdminServiceImpl.java:496)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl$1.call(ClientMonitorImpl.java:209)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl$1.call(ClientMonitorImpl.java:206)

  at java.util.concurrent.FutureTask.run(FutureTask.java:262)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl.authenticate(ClientMonitorImpl.java:74)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.getClientMonitor(SsoAdminServiceImpl.java:135)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.<init>(SsoAdminServiceImpl.java:111)

  at com.vmware.vise.vim.security.sso.SsoUtil.getAdminService(SsoUtil.java:252)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.extractSystemDomains(UserSessionServiceImpl.java:180)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.getUserSession(UserSessionServiceImpl.java:156)

  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:606)

  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.$Proxy499.getUserSession(Unknown Source)

  at com.xxxxxxxxxxx

  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:606)

  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.$Proxy503.getAllPolicies(Unknown Source)

  at com.simplivity.backuppolicy.BackupPolicyDataAdapter.getAllModelObjects(BackupPolicyDataAdapter.java:252)

  at com.simplivity.common.data.BaseDataProviderAdapter.processQuery(BaseDataProviderAdapter.java:143)

  at com.simplivity.common.data.BaseDataProviderAdapter.getData(BaseDataProviderAdapter.java:106)

  at com.vmware.vise.data.query.impl.DataAdapterUtil.getDataFromAdapter(DataAdapterUtil.java:205)

  at com.vmware.vise.data.query.impl.DataAdapterUtil.getResultFromAdapter(DataAdapterUtil.java:166)

  at com.vmware.vise.data.query.impl.DataAdapterUtil.access$000(DataAdapterUtil.java:40)

  at com.vmware.vise.data.query.impl.DataAdapterUtil$1.call(DataAdapterUtil.java:78)

  at com.vmware.vise.data.query.impl.DataAdapterUtil$1.call(DataAdapterUtil.java:75)

  at com.vmware.vise.util.concurrent.ExecutorUtil$3.call(ExecutorUtil.java:630)

  at com.vmware.vise.util.concurrent.ExecutorUtil$ThreadContextPropagatingCallable.call(ExecutorUtil.java:984)

  at java.util.concurrent.FutureTask.run(FutureTask.java:262)

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

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

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

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Yes, this is the type of logging that I added. Is this the message that immediately precedes the class loading error? If it is, things are getting strange -- endpoints-app-6.0.0.war should contain "DynamicImport-Package: *" in its MANIFEST.MF, so it should be able to see all classes. Can you, please, check if your endpoints-app-6.0.0.war contains any dynamic imports in its manifest? Also, please, apply the fix that I attached and see if it will solve the problem.

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Please, also check if both the diagnostic message (with the three tildes) and the error message are logged by the same thread. The diagnostic message is logged by thread "data-service-pool-148". If the error message is logged by a different thread, please, find the first preceding diagnostic message by the same thread. It will be strange if it turns out that the endpoints-app class loader can't see some classes in some situations.

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

Well, I copied the message from the logs before I hit the class loader error (called getUserSession() once to get the logging output that you added)

I see the following in the endpoints-app-6.0.0.war manifest file, which matches what you'd expect:

Manifest-Version: 1.0

Archiver-Version: Plexus Archiver

Created-By: Apache Maven

Built-By: mts

Build-Jdk: 1.7.0_21

DynamicImport-Package: *

Bundle-Vendor: VMware

Bundle-Version: 6.0.0

Tool: Bundlor 1.0.0.RELEASE

Bundle-Name: endpoints-app

Bundle-ManifestVersion: 2

Bundle-SymbolicName: com.vmware.vsphere.client.endpointsapp

Web-ContextPath: vsphere-client/endpoints

Import-Package: com.vmware.vise.messaging.endpoints,com.vmware.vise.me

ssaging.remoting,com.vmware.vise.messaging.validators,com.vmware.vise

.vim.messaging.context.support,com.vmware.vise.vim.messaging.websocke

t,com.vmware.vise.vim.messaging.websocket.tomcat,flex.messaging.valid

ators,org.eclipse.virgo.web.dm,org.osgi.framework,org.springframework

.aop;version="[3.1.4.RELEASE,3.1.4.RELEASE]",org.springframework.aop.

config,org.springframework.aop.framework,org.springframework.aop.scop

e,org.springframework.beans.factory.config,org.springframework.flex.m

essaging;version="[1.5.2.RELEASE,1.5.2.RELEASE]",org.springframework.

flex.remoting;version="[1.5.2.RELEASE,1.5.2.RELEASE]",org.springframe

work.flex.servlet;version="[1.5.2.RELEASE,1.5.2.RELEASE]",org.springf

ramework.security.config;version="[3.1.4.RELEASE,3.1.4.RELEASE]",org.

springframework.web.context,org.springframework.web.filter,org.spring

framework.web.servlet,org.springframework.web.servlet.handler,org.spr

ingframework.web.servlet.mvc

I tried loading your patched jars but when I start the web client service I'm getting these errors:

[2016-06-27T16:15:29.684-04:00] [ERROR] iLogServiceListener@60745678  org.osgi.service.log.LogService                                   Bundle org.eclipse.equinox.ds_1.4.0.v20120112-1400, [SCR] Unexpected exception occurred! java.lang.IllegalStateException: BundleContext is no longer valid

  at org.eclipse.osgi.framework.internal.core.BundleContextImpl.checkValid(BundleContextImpl.java:931)

  at org.eclipse.osgi.framework.internal.core.BundleContextImpl.getServiceReferences(BundleContextImpl.java:498)

  at org.eclipse.equinox.internal.ds.Reference.hasProviders(Reference.java:127)

  at org.eclipse.equinox.internal.ds.Resolver.selectNewlyUnsatisfied(Resolver.java:600)

  at org.eclipse.equinox.internal.ds.Resolver.getEligible(Resolver.java:364)

  at org.eclipse.equinox.internal.ds.SCRManager.serviceChanged(SCRManager.java:222)

  at org.eclipse.osgi.internal.serviceregistry.FilteredServiceListener.serviceChanged(FilteredServiceListener.java:107)

  at org.eclipse.osgi.framework.internal.core.BundleContextImpl.dispatchEvent(BundleContextImpl.java:861)

  at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)

  at org.eclipse.osgi.framework.eventmgr.ListenerQueue.dispatchEventSynchronous(ListenerQueue.java:148)

  at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEventPrivileged(ServiceRegistry.java:819)

  at org.eclipse.osgi.internal.serviceregistry.ServiceRegistry.publishServiceEvent(ServiceRegistry.java:771)

  at org.eclipse.osgi.internal.serviceregistry.ServiceRegistrationImpl.unregister(ServiceRegistrationImpl.java:225)

  at org.eclipse.equinox.internal.cm.Activator.stop(Activator.java:57)

  at org.eclipse.osgi.framework.internal.core.BundleContextImpl$2.run(BundleContextImpl.java:771)

  at java.security.AccessController.doPrivileged(Native Method)

  at org.eclipse.osgi.framework.internal.core.BundleContextImpl.stop(BundleContextImpl.java:764)

  at org.eclipse.osgi.framework.internal.core.BundleHost.stopWorker(BundleHost.java:510)

  at org.eclipse.osgi.framework.internal.core.AbstractBundle.suspend(AbstractBundle.java:566)

  at org.eclipse.osgi.framework.internal.core.Framework.suspendBundle(Framework.java:1206)

  at org.eclipse.osgi.framework.internal.core.StartLevelManager.decFWSL(StartLevelManager.java:592)

  at org.eclipse.osgi.framework.internal.core.StartLevelManager.doSetStartLevel(StartLevelManager.java:257)

  at org.eclipse.osgi.framework.internal.core.StartLevelManager.shutdown(StartLevelManager.java:215)

  at org.eclipse.osgi.framework.internal.core.InternalSystemBundle.suspend(InternalSystemBundle.java:284)

  at org.eclipse.osgi.framework.internal.core.Framework.shutdown(Framework.java:692)

  at org.eclipse.osgi.framework.internal.core.Framework.close(Framework.java:600)

  at org.eclipse.osgi.framework.internal.core.InternalSystemBundle$1.run(InternalSystemBundle.java:261)

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

Any idea what might be going on?  I'm running the patched class in security-service from this thread (that you provided initially) , plus the patched vim-services and vim-commons-vsphere that you provided in this latest zip.   Let me know if you'd like me to revert all jars back and simply replace vim-commons-vsphere and vim-services per your latest comments.

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

The error you're getting is usually preceded by some other error(s) which were deemed fatal by the Virgo server, so it decided to shut down. What is the first error that you see in the log after you start up the web client?

The patch in security-service may stay. It shouldn't cause problems.

I tried these jars over here on release 6.0 Patch 02 (build 3271482) and they work. Are you using the same release in your environment? If not, please, tell me your build number and I will create jars for that build. However, it might take me a couple of hours because I have something else I need to do first.

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

I'm running web client: Version 6.0.0 Build 3617395

Gonna go back and get answers to your question about if the message is logged on the same thread and what messages preceded the context bundle errors.

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Okay, so you're using release 6.0 Update 2. I will build jars for it but, please, give me a few hours.

0 Kudos
mikemayors
Enthusiast
Enthusiast
Jump to solution

Looks like both the error and diagnostic message are logged by http-bio-9443-exec-6. It also looks like the diagnostic message immediately precedes the class loading error. (I did a search for SsoServiceException. This is the first occurrence; it immediately follows your diagnostic message)

[2016-06-27T17:11:29.525-04:00] [INFO ] http-bio-9443-exec-6        70000120 100009 200001 com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl        ~~~ The thread context class loader is org.eclipse.gemini.web.tomcat.internal.loading.BundleWebappClassLoader@23444e80 (com.simplivity.federationui_1.1.9 [379]) java.lang.Exception: DummyException

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.logClassLoader(SsoAdminServiceImpl.java:574)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.processLogin(SsoAdminServiceImpl.java:146)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.access$300(SsoAdminServiceImpl.java:58)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl$SolutionUserAuthenticator.authenticate(SsoAdminServiceImpl.java:512)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl$SolutionUserAuthenticator.authenticate(SsoAdminServiceImpl.java:496)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl$1.call(ClientMonitorImpl.java:209)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl$1.call(ClientMonitorImpl.java:206)

  at java.util.concurrent.FutureTask.run(FutureTask.java:262)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl.authenticate(ClientMonitorImpl.java:74)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.getClientMonitor(SsoAdminServiceImpl.java:135)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.<init>(SsoAdminServiceImpl.java:111)

  at com.vmware.vise.vim.security.sso.SsoUtil.getAdminService(SsoUtil.java:252)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.extractSystemDomains(UserSessionServiceImpl.java:180)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.getUserSession(UserSessionServiceImpl.java:156)

  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:606)

  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.$Proxy518.getUserSession(Unknown Source)

  at com.simplivity.xxxxxxxxxxxxxx

  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:606)

  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.$Proxy521.callGetSession(Unknown Source)

  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:606)

  at flex.messaging.services.remoting.adapters.JavaAdapter.invoke(JavaAdapter.java:418)

  at com.vmware.vise.messaging.remoting.JavaAdapterEx.invoke(JavaAdapterEx.java:50)

  at flex.messaging.services.RemotingService.serviceMessage(RemotingService.java:183)

  at flex.messaging.MessageBroker.routeMessageToService(MessageBroker.java:1400)

  at flex.messaging.endpoints.AbstractEndpoint.serviceMessage(AbstractEndpoint.java:1011)

  at flex.messaging.endpoints.AbstractEndpoint$$FastClassByCGLIB$$1a3ef066.invoke(<generated>)

  at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)

  at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

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

  at org.springframework.flex.core.MessageInterceptionAdvice.invoke(MessageInterceptionAdvice.java:66)

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

  at org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:124)

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

  at org.springframework.aop.framework.Cglib2AopProxy$FixedChainStaticTargetInterceptor.intercept(Cglib2AopProxy.java:573)

  at com.vmware.vise.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$38860bad.serviceMessage(<generated>)

  at flex.messaging.endpoints.amf.MessageBrokerFilter.invoke(MessageBrokerFilter.java:103)

  at flex.messaging.endpoints.amf.LegacyFilter.invoke(LegacyFilter.java:158)

  at flex.messaging.endpoints.amf.SessionFilter.invoke(SessionFilter.java:44)

  at flex.messaging.endpoints.amf.BatchProcessFilter.invoke(BatchProcessFilter.java:67)

  at flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter.java:166)

  at flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.java:291)

  at com.vmware.vise.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$38860bad.service(<generated>)

  at org.springframework.flex.servlet.MessageBrokerHandlerAdapter.handle(MessageBrokerHandlerAdapter.java:109)

  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.doPost(FrameworkServlet.java:789)

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

  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 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:501)

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

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

  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:408)

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

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

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

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

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

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

[2016-06-27T17:11:29.533-04:00] [ERROR] http-bio-9443-exec-6        70000120 100009 200001 c.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl  There was an issue while extracting the list of system domains com.vmware.vise.vim.security.sso.exception.SsoServiceException: SSO admin service failure

  at com.vmware.vise.vim.security.sso.SsoUtil.getAdminService(SsoUtil.java:256)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.extractSystemDomains(UserSessionServiceImpl.java:180)

  at com.vmware.vsphere.client.usersession.impl.UserSessionServiceImpl.getUserSession(UserSessionServiceImpl.java:156)

  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:606)

  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.$Proxy518.getUserSession(Unknown Source)

  at com.simplivity.federation.FederationServiceImpl.callGetSession(FederationServiceImpl.java:183)

  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:606)

  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.$Proxy521.callGetSession(Unknown Source)

  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:606)

  at flex.messaging.services.remoting.adapters.JavaAdapter.invoke(JavaAdapter.java:418)

  at com.vmware.vise.messaging.remoting.JavaAdapterEx.invoke(JavaAdapterEx.java:50)

  at flex.messaging.services.RemotingService.serviceMessage(RemotingService.java:183)

  at flex.messaging.MessageBroker.routeMessageToService(MessageBroker.java:1400)

  at flex.messaging.endpoints.AbstractEndpoint.serviceMessage(AbstractEndpoint.java:1011)

  at flex.messaging.endpoints.AbstractEndpoint$$FastClassByCGLIB$$1a3ef066.invoke(<generated>)

  at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)

  at org.springframework.aop.framework.Cglib2AopProxy$CglibMethodInvocation.invokeJoinpoint(Cglib2AopProxy.java:689)

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

  at org.springframework.flex.core.MessageInterceptionAdvice.invoke(MessageInterceptionAdvice.java:66)

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

  at org.springframework.aop.framework.adapter.ThrowsAdviceInterceptor.invoke(ThrowsAdviceInterceptor.java:124)

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

  at org.springframework.aop.framework.Cglib2AopProxy$FixedChainStaticTargetInterceptor.intercept(Cglib2AopProxy.java:573)

  at com.vmware.vise.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$38860bad.serviceMessage(<generated>)

  at flex.messaging.endpoints.amf.MessageBrokerFilter.invoke(MessageBrokerFilter.java:103)

  at flex.messaging.endpoints.amf.LegacyFilter.invoke(LegacyFilter.java:158)

  at flex.messaging.endpoints.amf.SessionFilter.invoke(SessionFilter.java:44)

  at flex.messaging.endpoints.amf.BatchProcessFilter.invoke(BatchProcessFilter.java:67)

  at flex.messaging.endpoints.amf.SerializationFilter.invoke(SerializationFilter.java:166)

  at flex.messaging.endpoints.BaseHTTPEndpoint.service(BaseHTTPEndpoint.java:291)

  at com.vmware.vise.messaging.endpoints.AMFEndpoint$$EnhancerByCGLIB$$38860bad.service(<generated>)

  at org.springframework.flex.servlet.MessageBrokerHandlerAdapter.handle(MessageBrokerHandlerAdapter.java:109)

  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.doPost(FrameworkServlet.java:789)

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

  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 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:501)

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

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

  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:408)

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

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

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

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

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

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

Caused by: java.util.concurrent.ExecutionException: java.lang.IllegalArgumentException: interface com.vmware.vim.binding.sso.SessionManager is not visible from class loader

  at java.util.concurrent.FutureTask.report(FutureTask.java:122)

  at java.util.concurrent.FutureTask.get(FutureTask.java:188)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl.authenticate(ClientMonitorImpl.java:89)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.getClientMonitor(SsoAdminServiceImpl.java:135)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.<init>(SsoAdminServiceImpl.java:111)

  at com.vmware.vise.vim.security.sso.SsoUtil.getAdminService(SsoUtil.java:252)

  ... 92 common frames omitted

Caused by: java.lang.IllegalArgumentException: interface com.vmware.vim.binding.sso.SessionManager is not visible from class loader

  at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:616)

  at java.lang.reflect.Proxy$ProxyClassFactory.apply(Proxy.java:592)

  at java.lang.reflect.WeakCache$Factory.get(WeakCache.java:244)

  at java.lang.reflect.WeakCache.get(WeakCache.java:141)

  at java.lang.reflect.Proxy.getProxyClass0(Proxy.java:455)

  at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:738)

  at com.vmware.vim.vmomi.client.common.impl.ManagedObjectFactoryImpl.createManagedObject(ManagedObjectFactoryImpl.java:88)

  at com.vmware.vim.vmomi.client.http.impl.HttpClient.createStub(HttpClient.java:76)

  at com.vmware.vise.vim.commons.vmomi.ClientWithSharedHttpConfig.createStub(ClientWithSharedHttpConfig.java:66)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.processLogin(SsoAdminServiceImpl.java:147)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl.access$300(SsoAdminServiceImpl.java:58)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl$SolutionUserAuthenticator.authenticate(SsoAdminServiceImpl.java:512)

  at com.vmware.vise.vim.security.sso.impl.SsoAdminServiceImpl$SolutionUserAuthenticator.authenticate(SsoAdminServiceImpl.java:496)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl$1.call(ClientMonitorImpl.java:209)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl$1.call(ClientMonitorImpl.java:206)

  at java.util.concurrent.FutureTask.run(FutureTask.java:262)

  at com.vmware.vise.util.concurrent.client.ClientMonitorImpl.authenticate(ClientMonitorImpl.java:74)

  ... 95 common frames omitted

Regarding the bundle context error, here is the first error I found in the log (after restarting web client service with your patched vim-commons-vsphere and vim-services jars). Perhaps this is just due to a version mismatch since I'm running update 2.

C:\ProgramData\VMware\vCenterServer\cfg\vsphere-client\cmCatalog\com.vmware.vim.smssms.zip:US: 2

[2016-06-27T17:20:14.437-04:00] [INFO ] region-dm-6                  o.s.beans.factory.support.DefaultListableBeanFactory              Destroying singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@495eba79: defining beans [configurationService,dataServiceExtensionRegistry,metadataServiceRegistry,objectModelProviderRegistry,keystoreService,objectReferenceService,searchBasedAdapter,propertyCollectorDataAdapter,propertyCollectorPropertyProvider,ssoService,queryServiceIndex,searchServiceExtensionRegistry,dataService,org.eclipse.gemini.blueprint.service.exporter.support.OsgiServiceFactoryBean#0,org.eclipse.gemini.blueprint.service.exporter.support.OsgiServiceFactoryBean#1,extensionService,org.eclipse.gemini.blueprint.service.exporter.support.OsgiServiceFactoryBean#2,resourceModelTypeProviderRegistryService,serviceRegistry,searchThreadPoolName,workerThreadFactory,timeUnitMillis,dataAdapterReadTimeout,dataAdapterConnectionTimeout,serenityThreadPool,searchServiceExtensionRegistryImpl,vmodlProvider,descriptorSource,searchService,searchBasedAdapterImpl,iconsLabelsPropertyProviderAdapter,vcenterObjectProviderAdapter,dsaSearchMetadataRegistrar,resourceModelTypeProviderRegistry,dataAdaptersThreadPoolHealthReporter,org.springframework.beans.factory.config.MethodInvokingFactoryBean#0,queryServiceIndexImpl,queryServiceSharedHttpConfigPool,propertyCollectorDataAdapterImpl,dsaPcSearchMetadataRegistrar]; root of factory hierarchy

[2016-06-27T17:20:14.438-04:00] [INFO ] region-dm-6                  .a.d.i.BlueprintEventPostingOsgiBundleApplicationContextListener  Sending event to topic 'org/osgi/service/blueprint/container/FAILURE' with properties '{bundle.version=6.0.0, bundle=com.vmware.vim.dataserviceadapters_6.0.0 [211], bundle.symbolicName=com.vmware.vim.dataserviceadapters, exception=org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchBasedAdapter': Invocation of init method failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchBasedAdapterImpl' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'searchService' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchService' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceIndexImpl' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'queryServiceIndexImpl' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceSharedHttpConfigPool' while setting constructor argument; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean] for bean with name 'queryServiceSharedHttpConfigPool' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]; nested exception is java.lang.ClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean not found from bundle [com.vmware.vim.dataserviceadapters], type=5, timestamp=1467062414438, bundle.id=211}'

[2016-06-27T17:20:14.450-04:00] [ERROR] region-dm-6                  org.eclipse.virgo.medic.eventlog.default                        AG0000E Application context creation failure for bundle 'com.vmware.vim.dataserviceadapters' version '6.0.0'. org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchBasedAdapter': Invocation of init method failed; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchBasedAdapterImpl' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'searchService' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchService' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceIndexImpl' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'queryServiceIndexImpl' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceSharedHttpConfigPool' while setting constructor argument; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean] for bean with name 'queryServiceSharedHttpConfigPool' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]; nested exception is java.lang.ClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean not found from bundle [com.vmware.vim.dataserviceadapters]

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1455)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)

  at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)

  at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)

  at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)

  at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)

  at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:589)

  at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:925)

  at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.access$1600(AbstractDelegatedExecutionApplicationContext.java:60)

  at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:325)

  at org.eclipse.gemini.blueprint.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)

  at org.eclipse.gemini.blueprint.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:290)

  at org.eclipse.gemini.blueprint.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:137)

  at org.eclipse.virgo.kernel.agent.dm.ContextPropagatingTaskExecutor$2.run(ContextPropagatingTaskExecutor.java:95)

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

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

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

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchBasedAdapterImpl' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'searchService' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchService' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceIndexImpl' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'queryServiceIndexImpl' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceSharedHttpConfigPool' while setting constructor argument; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean] for bean with name 'queryServiceSharedHttpConfigPool' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]; nested exception is java.lang.ClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean not found from bundle [com.vmware.vim.dataserviceadapters]

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:329)

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:107)

  at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:616)

  at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:148)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1035)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:939)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)

  at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)

  at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)

  at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)

  at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)

  at org.eclipse.gemini.blueprint.service.exporter.support.OsgiServiceFactoryBean.afterPropertiesSet(OsgiServiceFactoryBean.java:198)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1514)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1452)

  ... 17 common frames omitted

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'searchService' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceIndexImpl' while setting constructor argument; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'queryServiceIndexImpl' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceSharedHttpConfigPool' while setting constructor argument; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean] for bean with name 'queryServiceSharedHttpConfigPool' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]; nested exception is java.lang.ClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean not found from bundle [com.vmware.vim.dataserviceadapters]

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:329)

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:107)

  at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:616)

  at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:441)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1015)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:911)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)

  at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:313)

  at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:323)

  ... 31 common frames omitted

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'queryServiceIndexImpl' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]: Cannot resolve reference to bean 'queryServiceSharedHttpConfigPool' while setting constructor argument; nested exception is org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean] for bean with name 'queryServiceSharedHttpConfigPool' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]; nested exception is java.lang.ClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean not found from bundle [com.vmware.vim.dataserviceadapters]

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:329)

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:107)

  at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:630)

  at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:148)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1035)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:939)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:485)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)

  at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)

  at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)

  at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)

  at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:323)

  ... 41 common frames omitted

Caused by: org.springframework.beans.factory.CannotLoadBeanClassException: Cannot find class [com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean] for bean with name 'queryServiceSharedHttpConfigPool' defined in URL [bundleentry://211.fwk1551486100/META-INF/spring/bundle-context.xml]; nested exception is java.lang.ClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean not found from bundle [com.vmware.vim.dataserviceadapters]

  at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1262)

  at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:433)

  at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)

  at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)

  at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)

  at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)

  at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:323)

  ... 53 common frames omitted

Caused by: java.lang.ClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean not found from bundle [com.vmware.vim.dataserviceadapters]

  at org.eclipse.gemini.blueprint.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:101)

  at org.eclipse.gemini.blueprint.util.BundleDelegatingClassLoader.loadClass(BundleDelegatingClassLoader.java:155)

  at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

  at org.springframework.util.ClassUtils.forName(ClassUtils.java:258)

  at org.springframework.beans.factory.support.AbstractBeanDefinition.resolveBeanClass(AbstractBeanDefinition.java:417)

  at org.springframework.beans.factory.support.AbstractBeanFactory.doResolveBeanClass(AbstractBeanFactory.java:1283)

  at org.springframework.beans.factory.support.AbstractBeanFactory.resolveBeanClass(AbstractBeanFactory.java:1254)

  ... 59 common frames omitted

Caused by: org.eclipse.virgo.kernel.osgi.framework.ExtendedClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean in KernelBundleClassLoader: [bundle=com.vmware.vim.dataserviceadapters_6.0.0]

  at org.eclipse.virgo.kernel.userregion.internal.equinox.KernelBundleClassLoader.loadClass(KernelBundleClassLoader.java:150)

  at java.lang.ClassLoader.loadClass(ClassLoader.java:358)

  at org.eclipse.osgi.internal.loader.BundleLoader.loadClass(BundleLoader.java:340)

  at org.eclipse.osgi.framework.internal.core.BundleHost.loadClass(BundleHost.java:229)

  at org.eclipse.osgi.framework.internal.core.AbstractBundle.loadClass(AbstractBundle.java:1212)

  at org.eclipse.gemini.blueprint.util.BundleDelegatingClassLoader.findClass(BundleDelegatingClassLoader.java:97)

  ... 65 common frames omitted

Caused by: java.lang.ClassNotFoundException: com.vmware.vise.vim.commons.vmomi.vc.VcAwareSharedHttpConfigPoolFactoryBean

  at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:455)

  at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:421)

  at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:412)

  at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107)

  at org.eclipse.virgo.kernel.userregion.internal.equinox.KernelBundleClassLoader.loadClass(KernelBundleClassLoader.java:146)

  ... 70 common frames omitted

Let me know if I missed anything.  Thanks again for digging into this.

0 Kudos
vesuvius_prime
VMware Employee
VMware Employee
Jump to solution

Okie-dokie, here are my answers:

1. Regarding the diagnostic message about the class loader:

Your latest post is a lot more informative because the latest messages show that the class loader is com.simplivity.federationui_1.1.9, not com.vmware.vsphere.client.endpointsapp_6.0.0. So, there are two ways to solve the problem:

1.1. Add the following to your federation-ui bundle's META-INF/MANIFEST.MF:

Require-Bundle: com.vmware.sso.vmodl

Since your own class loader is being used, if you make it able to see the necessary SSO classes, then there should be no exceptions.

The upside of this approach is that you won't have to patch your customer's environment(s). The downside is that it's not 'clean' -- it breaks the separation of concern. Normally, your bundle shouldn't know about the existence of a bundle with symbolic name 'com.vmware.sso.vmodl'. But I guess it will be easier for you to use this approach, regardless if it's clean or not.

By the way, if you don't like using the 'Require-Bundle' clause, you can opt to add the necessary individual packages to the 'Import-Package' clause. You will have to add each package which you see in the exceptions in the log (e.g. package com.vmware.vim.binding.sso). However, this is a bit brittle because you may miss some package.

1.2. The second approach is to use the fixed classes which I have attached to this post. If you encounter some other errors, please, let me know and I will help.

(This time I opted to give you classes, not jars, just in case. After all, replacing individual classes is less intrusive than replacing whole jars.)

2. The server startup error is caused by the fact that I gave you jars for release 6.0 Patch 2, but you have release 6.0 Update 2. Some classes, which are present in Update 2, are missing in Patch 2.

0 Kudos