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

NoSuchStructureException When publishing staging page to live when web content uses Global Structure

    Details

      Description

      Reproducible in Trunk rev. 116817

      Steps to recreate issue:

      1. Have site with staging turned on with default selections
      2. Create test parent structure in Global that will be used as parent. Can be any structure field like "test parent".
      (Go to Control Panel>Web Content>Add structure>Launch Editor

      <?xml version="1.0"?>

      <root>
      <dynamic-element name="field1" type="text" index-type="" repeatable="false" ref="" extra=""/>
      </root>

      2b. Create test child structure in Global that has the parent as the test parent.

      In editor:

      <?xml version="1.0"?>

      <root>
      <dynamic-element name="childfield1" type="text" index-type="" repeatable="false" ref="" extra=""/>
      </root>

      3. Create test template in Global and select the test child structure.

      In Editor:

      <p>test</p>

      4. In staged site, create a new test page in public
      5. Go to test page in staging (ex. /web/test-staging/test)
      6. Add Web Content Display portlet anywhere
      7. Add New Web Content
      8. Select test structure from Global
      9. Enter in dummy values
      10. Publish to Live with Data selected in the Applications section (can leave default selections)
      11. Failed to retrieve content error. Stacktrace follows.

      15:12:02,239 ERROR [render_portlet_jsp:154] com.liferay.portal.kernel.lar.PortletDataException: com.liferay.portlet.journal.NoSuchStructureException: No JournalStructure exists with the key

      {uuid=fa4ddf46-e291-4e75-b2d6-704f3fe6f5c9, groupId=10595}
      at com.liferay.portal.kernel.lar.BasePortletDataHandler.importData(BasePortletDataHandler.java:78)
      at com.liferay.portal.lar.PortletImporter.importPortletData(PortletImporter.java:956)
      at com.liferay.portal.lar.PortletImporter.importPortletData(PortletImporter.java:896)
      at com.liferay.portal.lar.LayoutImporter.doImportLayouts(LayoutImporter.java:628)
      at com.liferay.portal.lar.LayoutImporter.importLayouts(LayoutImporter.java:140)
      at com.liferay.portal.service.impl.LayoutLocalServiceImpl.importLayouts(LayoutLocalServiceImpl.java:1379)
      at com.liferay.portal.service.LayoutLocalServiceWrapper.importLayouts(LayoutLocalServiceWrapper.java:1005)
      at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:54)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:112)
      at com.liferay.portal.service.impl.LayoutLocalServiceVirtualLayoutsAdvice.invoke(LayoutLocalServiceVirtualLayoutsAdvice.java:152)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:108)
      at com.liferay.portal.service.impl.LayoutLocalServiceStagingAdvice.invoke(LayoutLocalServiceStagingAdvice.java:102)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:108)
      at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:71)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:108)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:59)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:108)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:59)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:108)
      at com.liferay.portal.spring.aop.ChainableMethodAdvice.invoke(ChainableMethodAdvice.java:59)
      Caused by: com.liferay.portlet.journal.NoSuchStructureException: No JournalStructure exists with the key {uuid=fa4ddf46-e291-4e75-b2d6-704f3fe6f5c9, groupId=10595}

      at com.liferay.portlet.journal.service.persistence.JournalStructurePersistenceImpl.findByUUID_G(JournalStructurePersistenceImpl.java:1165)
      at com.liferay.portlet.journal.service.base.JournalStructureLocalServiceBaseImpl.getJournalStructureByUuidAndGroupId(JournalStructureLocalServiceBaseImpl.java:291)
      at com.liferay.portlet.journal.service.JournalStructureLocalServiceWrapper.getJournalStructureByUuidAndGroupId(JournalStructureLocalServiceWrapper.java:197)
      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:597)
      at com.li

        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:
                  7 years, 5 weeks, 1 day ago

                  Packages

                  Version Package
                  6.0.X EE
                  6.1.30 EE GA3
                  --Sprint 11/12
                  6.2.0 CE M2