Uploaded image for project: 'Confluence Data Center'
  1. Confluence Data Center
  2. CONFSERVER-5502

Browse groups throws ClassCastException if there are LDAP groups that have the same name as Confluence goups

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Medium
    • 3.5
    • None
    • None

    Description

      If you have enabled the new Altassian-User LDAP integration and you have LDAP groups that have the same name as a group set up inside Confluence, then you will get this exception when hitting the 'Browse Groups' page:

      org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getMemberNames' in class $Proxy16 threw exception class java.lang.ClassCastException : null
      at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:309)
      caused by: java.lang.ClassCastException
      at com.atlassian.user.impl.hibernate.HibernateGroupManager.getLocalMemberNames(HibernateGroupManager.java:184)

      Stack Trace: [hide]

      org.apache.velocity.exception.MethodInvocationException: Invocation of method 'getMemberNames' in class $Proxy16 threw exception class java.lang.ClassCastException : null
      at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:309)
      at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:207)
      at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:250)
      at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:94)
      at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:344)
      at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:153)
      at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:94)
      at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:271)
      at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:128)
      at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:271)
      at org.apache.velocity.Template.merge(Template.java:296)
      at com.opensymphony.webwork.dispatcher.VelocityResult.doExecute(VelocityResult.java:91)
      at bucket.util.profiling.ProfiledVelocityResult.doExecute(ProfiledVelocityResult.java:18)
      at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:116)
      at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:263)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:187)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.security.actions.PermissionCheckInterceptor.intercept(PermissionCheckInterceptor.java:39)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.pages.actions.PageAwareInterceptor.intercept(PageAwareInterceptor.java:94)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.spaces.actions.SpaceAwareInterceptor.intercept(SpaceAwareInterceptor.java:82)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.core.ConfluenceAutowireInterceptor.intercept(ConfluenceAutowireInterceptor.java:25)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.util.XWorkTransactionInterceptor.intercept(XWorkTransactionInterceptor.java:133)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:115)
      at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:229)
      at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:199)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
      at com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
      at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
      at com.atlassian.confluence.util.profiling.ProfilingPageFilter.parsePage(ProfilingPageFilter.java:150)
      at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.confluence.util.ServletContextThreadLocalFilter.doFilter(ServletContextThreadLocalFilter.java:30)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.confluence.util.UserThreadLocalFilter.doFilter(UserThreadLocalFilter.java:45)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:96)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
      at bucket.custom.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:31)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:73)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:132)
      at com.atlassian.confluence.util.error.ProfilingAndErrorFilter.doFilter(ProfilingAndErrorFilter.java:27)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.core.filters.gzip.GzipFilter.doFilter(GzipFilter.java:61)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:37)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.caucho.server.http.Invocation.service(Invocation.java:315)
      at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
      at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:246)
      at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:164)
      at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
      at java.lang.Thread.run(Thread.java:534)
      caused by:
      java.lang.ClassCastException
      at com.atlassian.user.impl.hibernate.HibernateGroupManager.getLocalMemberNames(HibernateGroupManager.java:184)
      at com.atlassian.user.impl.hibernate.HibernateGroupManager.getMemberNames(HibernateGroupManager.java:168)
      at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152)
      at $Proxy14.getMemberNames(Unknown Source)
      at com.atlassian.user.impl.delegation.DelegatingGroupManager.getMemberNames(DelegatingGroupManager.java:158)
      at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152)
      at $Proxy14.getMemberNames(Unknown Source)
      at bucket.user.DefaultUserAccessor.getMemberNames(DefaultUserAccessor.java:612)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.springframework.aop.framework.AopProxyUtils.invokeJoinpointUsingReflection(AopProxyUtils.java:61)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:149)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:116)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:56)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:138)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:152)
      at $Proxy16.getMemberNames(Unknown Source)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:324)
      at org.apache.velocity.runtime.parser.node.ASTMethod.execute(ASTMethod.java:260)
      at org.apache.velocity.runtime.parser.node.ASTReference.execute(ASTReference.java:207)
      at org.apache.velocity.runtime.parser.node.ASTReference.render(ASTReference.java:250)
      at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:94)
      at org.apache.velocity.runtime.directive.Foreach.render(Foreach.java:344)
      at org.apache.velocity.runtime.parser.node.ASTDirective.render(ASTDirective.java:153)
      at org.apache.velocity.runtime.parser.node.ASTBlock.render(ASTBlock.java:94)
      at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:271)
      at org.apache.velocity.runtime.parser.node.ASTIfStatement.render(ASTIfStatement.java:128)
      at org.apache.velocity.runtime.parser.node.SimpleNode.render(SimpleNode.java:271)
      at org.apache.velocity.Template.merge(Template.java:296)
      at com.opensymphony.webwork.dispatcher.VelocityResult.doExecute(VelocityResult.java:91)
      at bucket.util.profiling.ProfiledVelocityResult.doExecute(ProfiledVelocityResult.java:18)
      at com.opensymphony.webwork.dispatcher.WebWorkResultSupport.execute(WebWorkResultSupport.java:116)
      at com.opensymphony.xwork.DefaultActionInvocation.executeResult(DefaultActionInvocation.java:263)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:187)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.security.actions.PermissionCheckInterceptor.intercept(PermissionCheckInterceptor.java:39)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.pages.actions.PageAwareInterceptor.intercept(PageAwareInterceptor.java:94)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.spaces.actions.SpaceAwareInterceptor.intercept(SpaceAwareInterceptor.java:82)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.core.ConfluenceAutowireInterceptor.intercept(ConfluenceAutowireInterceptor.java:25)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.atlassian.confluence.util.XWorkTransactionInterceptor.intercept(XWorkTransactionInterceptor.java:133)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.interceptor.AroundInterceptor.intercept(AroundInterceptor.java:35)
      at com.opensymphony.xwork.DefaultActionInvocation.invoke(DefaultActionInvocation.java:165)
      at com.opensymphony.xwork.DefaultActionProxy.execute(DefaultActionProxy.java:115)
      at com.opensymphony.webwork.dispatcher.ServletDispatcher.serviceAction(ServletDispatcher.java:229)
      at com.opensymphony.webwork.dispatcher.ServletDispatcher.service(ServletDispatcher.java:199)
      at javax.servlet.http.HttpServlet.service(HttpServlet.java:103)
      at com.caucho.server.http.FilterChainServlet.doFilter(FilterChainServlet.java:96)
      at com.opensymphony.module.sitemesh.filter.PageFilter.parsePage(PageFilter.java:118)
      at com.atlassian.confluence.util.profiling.ProfilingPageFilter.parsePage(ProfilingPageFilter.java:150)
      at com.opensymphony.module.sitemesh.filter.PageFilter.doFilter(PageFilter.java:52)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.confluence.util.ServletContextThreadLocalFilter.doFilter(ServletContextThreadLocalFilter.java:30)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.confluence.util.UserThreadLocalFilter.doFilter(UserThreadLocalFilter.java:45)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.seraph.filter.SecurityFilter.doFilter(SecurityFilter.java:182)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.seraph.filter.LoginFilter.doFilter(LoginFilter.java:177)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.johnson.filters.JohnsonFilter.doFilter(JohnsonFilter.java:96)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at org.springframework.orm.hibernate.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:170)
      at bucket.custom.FlushingSpringSessionInViewFilter.doFilterInternal(FlushingSpringSessionInViewFilter.java:31)
      at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:73)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.util.profiling.filters.ProfilingFilter.doFilter(ProfilingFilter.java:132)
      at com.atlassian.confluence.util.error.ProfilingAndErrorFilter.doFilter(ProfilingAndErrorFilter.java:27)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.core.filters.gzip.GzipFilter.doFilter(GzipFilter.java:61)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.atlassian.core.filters.AbstractEncodingFilter.doFilter(AbstractEncodingFilter.java:37)
      at com.caucho.server.http.FilterChainFilter.doFilter(FilterChainFilter.java:88)
      at com.caucho.server.http.Invocation.service(Invocation.java:315)
      at com.caucho.server.http.CacheInvocation.service(CacheInvocation.java:135)
      at com.caucho.server.http.HttpRequest.handleRequest(HttpRequest.java:246)
      at com.caucho.server.http.HttpRequest.handleConnection(HttpRequest.java:164)
      at com.caucho.server.TcpConnection.run(TcpConnection.java:139)
      at java.lang.Thread.run(Thread.java:534)

      Attachments

        Activity

          People

            matt@atlassian.com Matt Ryall
            dave@atlassian.com dave (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: