Uploaded image for project: 'PUBLIC - Liferay Portal Community Edition'
  1. PUBLIC - Liferay Portal Community Edition
  2. LPS-157420

Unable to export site pages with circular references

Description

    I have a site with different pages (content page) and every page has a footer with links to the relevant sections of the site.

    For example I have a "News and Events" page with two child page ("News" and "Events"). In the footer one of the links is "News and Events" pointing to "News and Events" page.

    So:

    • "news and events" page has a button to go to "News" page and a button to go to "Events" page
    • "News" page has it's own content but oalse the footer with the link to "News and Events". The same for "Events" page

     

    When I try to export the site this "circular reference" make the process loop and produce a stack overflow exception.

    For my tests this bug impacts every 7.4 CE and DXP. I've not tested 7.3 which also provide content pages.

     

    To replicate it:

    • start a fresh liferay bundle
    • go to guest site - Site Builder - Pages
    • create a first level "blank" page named "Test" and publish it with no content
    • create a "blank" page named "News and Events" child of "Test" and publish it with no content
    • create a "blank" page names "News", child of "News and Events"
    • add a "Button" fragment and in the link select "Page" and "News and Evets"
    • publish the "News" Page
    • edit "News and Events" page. Add a "Button" fragment and in the link select "Page" and "News"
    • publish "News ans Events" page
    • go to Publishing - Export and create an export process with only the "Test" page tree. You can deselect the contents

     

    Expected behaviour: export complete in few seconds

    Behavior obtained: process fail after a minute and the log il filled by stacktrace

     

    2022-07-01 12:21:12.521 ERROR [http-nio-8080-exec-2][BaseJSPPanelCategory:101] Unable to include /sites/site_administration_body.jsp
    org.apache.jasper.JasperException: java.lang.NullPointerException
    	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:440) ~[jasper.jar:9.0.56]
    	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473) ~[jasper.jar:9.0.56]
    	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377) ~[jasper.jar:9.0.56]
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[servlet-api.jar:4.0.FR]
    	at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:364) ~[bundleFile:?]
    	at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:376) ~[bundleFile:?]
    	at org.eclipse.equinox.http.servlet.internal.registration.EndpointRegistration.service(EndpointRegistration.java:153) ~[?:?]
    	at org.eclipse.equinox.http.servlet.internal.servlet.ResponseStateHandler.processRequest(ResponseStateHandler.java:62) ~[?:?]
    	at org.eclipse.equinox.http.servlet.internal.context.DispatchTargets.doDispatch(DispatchTargets.java:120) ~[?:?]
    	at org.eclipse.equinox.http.servlet.internal.servlet.RequestDispatcherAdaptor.include(RequestDispatcherAdaptor.java:48) ~[?:?]
    	at com.liferay.application.list.BaseJSPPanelCategory.includeJSP(BaseJSPPanelCategory.java:98) ~[bundleFile:?]
    	at com.liferay.application.list.BaseJSPPanelCategory.include(BaseJSPPanelCategory.java:67) ~[bundleFile:?]
    	at com.liferay.product.navigation.site.administration.internal.application.list.SiteAdministrationPanelCategory.include(SiteAdministrationPanelCategory.java:85) ~[?:?]
    	at com.liferay.application.list.taglib.servlet.taglib.PanelContentTag.doEndTag(PanelContentTag.java:41) ~[bundleFile:?]
    	at org.apache.jsp.portlet.product_005fmenu_jsp._jspService(product_005fmenu_jsp.java:496) ~[?:?]
    	at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:111) ~[jasper.jar:9.0.56]
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[servlet-api.jar:4.0.FR]
    	at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:411) ~[jasper.jar:9.0.56]
    	at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:473) ~[jasper.jar:9.0.56]
    	at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:377) ~[jasper.jar:9.0.56]
    	at javax.servlet.http.HttpServlet.service(HttpServlet.java:764) ~[servlet-api.jar:4.0.FR]
    	at com.liferay.portal.osgi.web.servlet.jsp.compiler.internal.JspServlet.service(JspServlet.java:364) ~[bundleFile:?]
    
    

     

     

    Attachments

      Issue Links

        Activity

          People

            eric.park Eric Park
            maumar Mauro Mariuzzo
            Felipe Lins Felipe Lins
            Michael Bowerman Michael Bowerman
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:
              6 weeks, 3 days ago

              Packages

                Version Package
                Master