Uploaded image for project: 'Crowd Data Center'
  1. Crowd Data Center
  2. CWD-1873

Groups or Users with '&' character in the name don't have their memberships listed

    XMLWordPrintable

Details

    • Bug
    • Resolution: Fixed
    • Low
    • 2.0.5
    • 2.0.3
    • None
    • None
    • MySQL (as described here) or MS SQL.

    Description

      How to reproduce (Internal Directory):

      1. Create a user named user&user
      2. Create a group named mygroup&group
      3. Add the user to the group

      Results:
      1. Crowd will say that the operation was successful, but will not show the user as a member of the group in the UI.
      2. Opening the User/Group profile and then accessing the Groups/Members tab, the membership is not displayed.
      3. Looking at the database, the user is a member of the group.

      Some Crowd admins reported that the problem is also happening if the user don't have '&' in the name. The group having it would be enough to see the problem.

      The logs report:

      2010-04-20 16:05:19,656 http-8095-5 ERROR [console.action.principal.UpdateGroups] Failed to find entity of type 
      [com.atlassian.crowd.integration.model.group.InternalGroup] with identifier [name <mygroup>, directoryId <32769>]
      com.atlassian.crowd.integration.exception.ObjectNotFoundException: Failed to find entity of type [com.atlassian.crowd.integration.model.group.InternalGroup] 
      with identifier [name <mygroup>, directoryId <32769>]
      	at com.atlassian.crowd.model.group.GroupDAOHibernate.findByName(GroupDAOHibernate.java:52)
      	at com.atlassian.crowd.integration.directory.internal.InternalDirectory.findGroupByName(InternalDirectory.java:561)
      	at com.atlassian.crowd.manager.directory.DirectoryManagerGeneric.findGroupByName(DirectoryManagerGeneric.java:379)
      	at com.atlassian.crowd.manager.directory.DirectoryManagerGeneric.addUserToGroup(DirectoryManagerGeneric.java:563)
      	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:592)
      	at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
      	at com.atlassian.spring.interceptors.SpringProfilingInterceptor.invoke(SpringProfilingInterceptor.java:20)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:106)
      	at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
      	at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
      	at $Proxy10.addUserToGroup(Unknown Source)
      	at com.atlassian.crowd.console.action.principal.UpdateGroups.doAddGroups(UpdateGroups.java:26)
      	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:592)
      

      So, it seems that the search queries are ignoring the everything after the special char (including it).

      Attachments

        Activity

          People

            4c7409f97ecf James Wong
            rbattaglin Renan Battaglin
            Votes:
            1 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: