Details

    • Branch Version/s:
      6.0.x
    • Similar Issues:
      Show 5 results 

      Description

      After upgrading to LR 6.0.6 from 5.2.3 and upgrading to algorithm 6, we get the following error when LR tries to import new users from active directory. Downgrading to alg. 5 allows the users to import w/o any errors.

      16:21:04,124 ERROR [PortalLDAPImporterImpl:470] Unable to import user CN=Joe Blow,CN=Users: null:null:(samaccountname=sAMAccountName: jblow)
      com.liferay.portal.NoSuchResourceActionException: CollaborationCalendar#ADD_TO_PAGE
      at com.liferay.portal.service.impl.ResourceActionLocalServiceImpl.getResourceAction(ResourceActionLocalServiceImpl.java:80)
      at sun.reflect.GeneratedMethodAccessor185.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
      at com.liferay.portal.dao.jdbc.aop.DynamicDataSourceTransactionInterceptor.invoke(DynamicDataSourceTransactionInterceptor.java:44)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
      at $Proxy67.getResourceAction(Unknown Source)
      at com.liferay.portal.service.impl.ResourcePermissionLocalServiceImpl.getAvailableResourcePermissionActionIds(ResourcePermissionLocalServiceImpl.java:127)
      at sun.reflect.GeneratedMethodAccessor1358.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
      at com.liferay.portal.dao.jdbc.aop.DynamicDataSourceTransactionInterceptor.invoke(DynamicDataSourceTransactionInterceptor.java:44)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
      at $Proxy69.getAvailableResourcePermissionActionIds(Unknown Source)
      at com.liferay.portal.service.ResourcePermissionLocalServiceUtil.getAvailableResourcePermissionActionIds(ResourcePermissionLocalServiceUtil.java:260)
      at com.liferay.portal.lar.PermissionExporter.exportPermissions_6(PermissionExporter.java:340)
      at com.liferay.portal.lar.PermissionExporter.exportPortletPermissions(PermissionExporter.java:418)
      at com.liferay.portal.lar.PortletExporter.exportPortlet(PortletExporter.java:634)
      at com.liferay.portal.lar.LayoutExporter.exportLayoutsAsFile(LayoutExporter.java:358)
      at com.liferay.portal.service.impl.LayoutLocalServiceImpl.exportLayoutsAsFile(LayoutLocalServiceImpl.java:398)
      at sun.reflect.GeneratedMethodAccessor1472.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
      at com.liferay.portal.dao.jdbc.aop.DynamicDataSourceTransactionInterceptor.invoke(DynamicDataSourceTransactionInterceptor.java:44)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
      at $Proxy28.exportLayoutsAsFile(Unknown Source)
      at com.liferay.portal.service.impl.UserGroupLocalServiceImpl.exportLayouts(UserGroupLocalServiceImpl.java:318)
      at com.liferay.portal.service.impl.UserGroupLocalServiceImpl.copyUserGroupLayouts(UserGroupLocalServiceImpl.java:139)
      at com.liferay.portal.service.impl.UserGroupLocalServiceImpl.copyUserGroupLayouts(UserGroupLocalServiceImpl.java:129)
      at com.liferay.portal.service.impl.UserGroupLocalServiceImpl.setUserUserGroups(UserGroupLocalServiceImpl.java:262)
      at sun.reflect.GeneratedMethodAccessor188.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:309)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:183)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:150)
      at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:110)
      at com.liferay.portal.dao.jdbc.aop.DynamicDataSourceTransactionInterceptor.invoke(DynamicDataSourceTransactionInterceptor.java:44)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:58)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
      at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:172)
      at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:202)
      at $Proxy83.setUserUserGroups(Unknown Source)
      at com.liferay.portal.service.UserGroupLocalServiceUtil.setUserUserGroups(UserGroupLocalServiceUtil.java:312)
      at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importGroups(PortalLDAPImporterImpl.java:563)
      at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAPByUser(PortalLDAPImporterImpl.java:465)
      at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:169)
      at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:122)
      at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:85)
      at com.liferay.portal.security.ldap.PortalLDAPImporterUtil.importFromLDAP(PortalLDAPImporterUtil.java:30)
      at com.liferay.portlet.admin.messaging.LDAPImportMessageListener.doReceive(LDAPImportMessageListener.java:38)
      at com.liferay.portlet.admin.messaging.LDAPImportMessageListener.receive(LDAPImportMessageListener.java:30)
      at sun.reflect.GeneratedMethodAccessor605.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
      at java.lang.reflect.Method.invoke(Method.java:597)
      at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:54)
      at $Proxy237.receive(Unknown Source)
      at com.liferay.portal.kernel.scheduler.messaging.SchedulerEventMessageListenerWrapper.receive(SchedulerEventMessageListenerWrapper.java:57)
      at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:63)
      at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:61)
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
      at java.lang.Thread.run(Thread.java:662)

        Activity

        Hide
        Sophia Zhang added a comment -

        Hey Terry,
        Thanks for the report. I tried to reproduce this issue but could not.
        After I upgrading from 523ce to 6.0.6ce,using either permission alg. 5 or alg. 6 were working for importing new users from active directory.

        Please ensure you have a fresh environment with no other issues that may interfere with the bug.And make sure you have correct LDAP settings in our portal. If I cannot reproduce this issue, it cannot be fixed. Thanks!

        Show
        Sophia Zhang added a comment - Hey Terry, Thanks for the report. I tried to reproduce this issue but could not. After I upgrading from 523ce to 6.0.6ce,using either permission alg. 5 or alg. 6 were working for importing new users from active directory. Please ensure you have a fresh environment with no other issues that may interfere with the bug.And make sure you have correct LDAP settings in our portal. If I cannot reproduce this issue, it cannot be fixed. Thanks!
        Hide
        Terry Jeske added a comment -

        Hi Sophia,

        It looks like I was mistaken. They do get imported, but cannot login. I think the problem is that on initial login, the public and private pages get created, and they do not have permissions to add resources to these pages hence the error:

        com.liferay.portal.NoSuchResourceActionException: CollaborationCalendar#ADD_TO_PAGE.

        Again, Alg. 5 works fine, but Alg.6 does not. This is an upgrade from 5.2.3 and I have seen several permissions issues. Is there a permissions integrity test? Can I safely rerun the permission migration?

        Show
        Terry Jeske added a comment - Hi Sophia, It looks like I was mistaken. They do get imported, but cannot login. I think the problem is that on initial login, the public and private pages get created, and they do not have permissions to add resources to these pages hence the error: com.liferay.portal.NoSuchResourceActionException: CollaborationCalendar#ADD_TO_PAGE. Again, Alg. 5 works fine, but Alg.6 does not. This is an upgrade from 5.2.3 and I have seen several permissions issues. Is there a permissions integrity test? Can I safely rerun the permission migration?
        Hide
        Terry Jeske added a comment -

        BTW, I searched you source code for a hint of CollaborationCalendar, but was not able to locate it anywhere. Do you know where this resource code comes from.

        Show
        Terry Jeske added a comment - BTW, I searched you source code for a hint of CollaborationCalendar, but was not able to locate it anywhere. Do you know where this resource code comes from.
        Hide
        Vicki Tsang (Inactive) added a comment -

        Reopened as per reporters comments. Please retest.

        Show
        Vicki Tsang (Inactive) added a comment - Reopened as per reporters comments. Please retest.
        Hide
        Terry Jeske added a comment -

        BTW,

        After a lot of digging around and testing I found that this is indeed an issue with the alg. 5 to alg. 6 upgrade. It looks like our data migration failed part way through, leaving Liferay in a inconsistent state. I would have expected that such a critical task would be run under a transaction, or at least have some way of reverting back to known good. From what I can surmise CollaborationCalendar is no longer used, but was still in the resourceaction, resourcepermission, and layout tables. If I tried to run the data migration a second time but received a dupe key exception, so in a test env. I deleted all the data from resourceaction and resourcepermissions and re-ran the migration. That seemed to work. The nasty part is that layouts have CollaborationCalendar as part of their typeSettings field. I manually removed this from each line (thankfully it was not a huge number).

        Show
        Terry Jeske added a comment - BTW, After a lot of digging around and testing I found that this is indeed an issue with the alg. 5 to alg. 6 upgrade. It looks like our data migration failed part way through, leaving Liferay in a inconsistent state. I would have expected that such a critical task would be run under a transaction, or at least have some way of reverting back to known good. From what I can surmise CollaborationCalendar is no longer used, but was still in the resourceaction, resourcepermission, and layout tables. If I tried to run the data migration a second time but received a dupe key exception, so in a test env. I deleted all the data from resourceaction and resourcepermissions and re-ran the migration. That seemed to work. The nasty part is that layouts have CollaborationCalendar as part of their typeSettings field. I manually removed this from each line (thankfully it was not a huge number).
        Hide
        Sophia Zhang added a comment -

        Hi Terry,
        I tested it several times today, but I was unable to reproduce it. Here are my steps according to your description.
        1. Startup 523ce using MySQL with permission 5(I used 6 at second time)
        2. Upgrade to 606ce using the same database.
        3. Try to Connect LDAP server Active Directory and imported users from the server.
        I could login as any imported user.
        If there is any step I did wrong, feel free to tell me your steps.
        I will keep this issue open since you tried many times and still experiencing the issue.

        Regards,
        Sophia

        Show
        Sophia Zhang added a comment - Hi Terry, I tested it several times today, but I was unable to reproduce it. Here are my steps according to your description. 1. Startup 523ce using MySQL with permission 5(I used 6 at second time) 2. Upgrade to 606ce using the same database. 3. Try to Connect LDAP server Active Directory and imported users from the server. I could login as any imported user. If there is any step I did wrong, feel free to tell me your steps. I will keep this issue open since you tried many times and still experiencing the issue. Regards, Sophia
        Hide
        Sophia Zhang added a comment -

        I have to close it since I couldn't reproduce it according to our workflow.

        Show
        Sophia Zhang added a comment - I have to close it since I couldn't reproduce it according to our workflow.
        Hide
        Traolly Xiong added a comment -

        Hello All,
        I am on the latest CE version 6.1.x of Liferay portal. The error I get at start-up is the same as the error in the details.
        How do resolve this issue? Some other posts suggest a new revision, but I don't see that on the Liferay site.

        Error:

        23:50:41,205 ERROR [PortalLDAPImporterImpl:675] Unable to import user CN=raw,OU=Users: null:null:

        {samaccountname=sAMAccountName: raw}

        java.lang.NullPointerException
        at javax.naming.directory.BasicAttributes.get(BasicAttributes.java:144)
        at com.liferay.util.ldap.LDAPUtil.getAttributeString(LDAPUtil.java:110)
        at com.liferay.util.ldap.LDAPUtil.getAttributeString(LDAPUtil.java:103)
        at com.liferay.util.ldap.LDAPUtil.getAttributeString(LDAPUtil.java:87)
        at com.liferay.portal.security.ldap.BaseLDAPToPortalConverter.importLDAPUser(BaseLDAPToPortalConverter.java:97)
        at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importUser(PortalLDAPImporterImpl.java:865)
        at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAPByUser(PortalLDAPImporterImpl.java:665)
        at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:189)
        at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:128)
        at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:95)
        at com.liferay.portal.security.ldap.PortalLDAPImporterUtil.importFromLDAP(PortalLDAPImporterUtil.java:30)
        at com.liferay.portlet.admin.messaging.LDAPImportMessageListener.doReceive(LDAPImportMessageListener.java:28)
        at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:25)
        at sun.reflect.GeneratedMethodAccessor1081.invoke(Unknown Source)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:597)
        at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:54)
        at $Proxy278.receive(Unknown Source)
        at com.liferay.portal.kernel.scheduler.messaging.SchedulerEventMessageListenerWrapper.receive(SchedulerEventMessageListenerWrapper.java:75)
        at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:65)
        at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:106)
        at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:669)
        at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:580)
        at java.lang.Thread.run(Thread.java:619)................

        Any help is fully appreciated.

        Thanks in advance.

        Regards,
        Traolly Xiong

        Show
        Traolly Xiong added a comment - Hello All, I am on the latest CE version 6.1.x of Liferay portal. The error I get at start-up is the same as the error in the details. How do resolve this issue? Some other posts suggest a new revision, but I don't see that on the Liferay site. Error: 23:50:41,205 ERROR [PortalLDAPImporterImpl:675] Unable to import user CN=raw,OU=Users: null:null: {samaccountname=sAMAccountName: raw} java.lang.NullPointerException at javax.naming.directory.BasicAttributes.get(BasicAttributes.java:144) at com.liferay.util.ldap.LDAPUtil.getAttributeString(LDAPUtil.java:110) at com.liferay.util.ldap.LDAPUtil.getAttributeString(LDAPUtil.java:103) at com.liferay.util.ldap.LDAPUtil.getAttributeString(LDAPUtil.java:87) at com.liferay.portal.security.ldap.BaseLDAPToPortalConverter.importLDAPUser(BaseLDAPToPortalConverter.java:97) at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importUser(PortalLDAPImporterImpl.java:865) at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAPByUser(PortalLDAPImporterImpl.java:665) at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:189) at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:128) at com.liferay.portal.security.ldap.PortalLDAPImporterImpl.importFromLDAP(PortalLDAPImporterImpl.java:95) at com.liferay.portal.security.ldap.PortalLDAPImporterUtil.importFromLDAP(PortalLDAPImporterUtil.java:30) at com.liferay.portlet.admin.messaging.LDAPImportMessageListener.doReceive(LDAPImportMessageListener.java:28) at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:25) at sun.reflect.GeneratedMethodAccessor1081.invoke(Unknown Source) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke(Method.java:597) at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:54) at $Proxy278.receive(Unknown Source) at com.liferay.portal.kernel.scheduler.messaging.SchedulerEventMessageListenerWrapper.receive(SchedulerEventMessageListenerWrapper.java:75) at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:65) at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:106) at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:669) at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:580) at java.lang.Thread.run(Thread.java:619)................ Any help is fully appreciated. Thanks in advance. Regards, Traolly Xiong

          People

          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:
              Days since last comment:
              3 years, 36 weeks ago

              Development

                Subcomponents

                  Structure Helper Panel