Uploaded image for project: 'PUBLIC - Liferay Social Office Community Edition'
  1. PUBLIC - Liferay Social Office Community Edition
  2. SOS-2233

Cannot remove a user from SO when the user home page template contains a URL page

    Details

    • Fix Priority:
      3
    • Affects Portal Version/s:
      6.2.x

      Description

      Description
      You are unable to un-assign users from using Social Office when the User Home Page Site template has a URL page added to it.

      STEPS TO REPRODUCE

      1. Start Liferay 6.2 EE SP3.
      2. Download the 6.2 plugin of Social Office.
      3. Place it in the deploy folder.
      4. Once it deploys, go to the license manager and paste a valid SO license in the field.
      5. Click Query and select SO EE.
      6. Restart the portal.
      7. Go to Control Panel > Site Templates.
      8. Manage the Social Office User Home template.
      9. Add a page called URL PAGE - make sure to select the option 'like to a URL and fill in a URL.' Save.
      10. Go to Social Office configurations.
      11. Check Test Test and click save.
      12. Uncheck Test Test and click save.
      13. Go to Site Templates and Mangae Social Office User Home.
      14. Click on URL PAGE and change the type to Layout instead of URL.
      15. Go to Users and Oginizations - add a user coolGuy.
      16. Go to Social Office Configurations.
      17. Check coolGuy. Save
      18. Uncheck coolGuy. Save

      Expected Results:

      • The errors in step 12 should not occur and you should be able to remove Test Test from Social Office.
      • The behavior in step 12 should be consistent with step 18.

      Actual Results:
      When a URL page is added to the Site template, users cannot be removed from SO. But when another page is added - layout - users can be removed.

      First Error in Stacktrace:

      15:56:55,020 ERROR [http-bio-8080-exec-7][PortletServlet:116] javax.portlet.PortletException: com.liferay.portal.ModelListenerException: com.liferay.portal.LayoutTypeException
      javax.portlet.PortletException: com.liferay.portal.ModelListenerException: com.liferay.portal.LayoutTypeException
              at com.liferay.portal.kernel.portlet.LiferayPortlet.callActionMethod(LiferayPortlet.java:166)
              at com.liferay.util.bridges.mvc.MVCPortlet.callActionMethod(MVCPortlet.java:247)
      

      Root cause:

      1. The exception is thrown at LayoutLocalServiceImpl.deleteLayout(Layout layout, boolean updateLayoutSet, ServiceContext serviceContext) the code that launch the exception was added by LPS-18660 to avoid setting an URL page as first page.
      2. The problem is that SO want to remove all layouts. It executes a loop with layout deletions and first page is switching from one to another during process.
      3. The last page to be deleted is the URL one.

      Changing the delete order, deleting from last to first, avoids first page switching.

        Attachments

          Issue Links

            Activity

              People

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

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Days since last comment:
                  5 years, 15 weeks ago

                  Packages

                  Version Package
                  3.X EE
                  3.X CE
                  3.1 EE
                  3.1.0 CE