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

Publishing to live/Importing a LAR may fail after upgrading to 6.1

Details

    Description

      1. Startup 6.0
      2. Turn on staging for a community
      2. Add a web content structure with one text field and template
      3. Add a web content using that structure
      -Enter "Test" for the title
      -Make the text field localizable and put anything
      4. Add another web content with the structure
      -Enter "Test" for the title
      -Make the text field localizable and put anything
      -Save
      -Add a Chinese translation of the article and make the default language Chinese
      5. Publish the community to live

      The order and same title is important, the key is to have the first article have these locales:
      <root available-locales="en_US" default-locale="en_US">
      and second article:
      <root available-locales="zh_CN,en_US" default-locale="zh_CN">

      6. Upgrade to 6.1
      7. Try publishing to live (select data range to "All")
      8. You get a portlet unavailable error and exception:

      Caused by: com.liferay.portlet.journal.ArticleTitleException
      at com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.validate(JournalArticleLocalServiceImpl.java:3459)
      at com.liferay.portlet.journal.service.impl.JournalArticleLocalServiceImpl.updateArticle(JournalArticleLocalServiceImpl.java:2011)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:122)
      at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:71)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:118)
      at com.liferay.portal.spring.aop.ServiceBeanAopProxy.invoke(ServiceBeanAopProxy.java:211)
      at $Proxy205.updateArticle(Unknown Source)
      at com.liferay.portlet.journal.service.JournalArticleLocalServiceUtil.updateArticle(JournalArticleLocalServiceUtil.java:1001)
      at com.liferay.portlet.journal.lar.JournalPortletDataHandlerImpl.importArticle(JournalPortletDataHandlerImpl.java:715)
      at com.liferay.portlet.journal.lar.JournalPortletDataHandlerImpl.doImportData(JournalPortletDataHandlerImpl.java:2405)
      at com.liferay.portal.kernel.lar.BasePortletDataHandler.importData(BasePortletDataHandler.java:78)
      at com.liferay.portal.lar.PortletImporter.importPortletData(PortletImporter.java:1056)
      at com.liferay.portal.lar.PortletImporter.importPortletData(PortletImporter.java:996)
      at com.liferay.portal.lar.LayoutImporter.doImportLayouts(LayoutImporter.java:728)
      at com.liferay.portal.lar.LayoutImporter.importLayouts(LayoutImporter.java:147)
      at com.liferay.portal.service.impl.LayoutLocalServiceImpl.importLayouts(LayoutLocalServiceImpl.java:1382)
      at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
      at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
      at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
      at java.lang.reflect.Method.invoke(Unknown Source)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:122)
      at com.liferay.portal.service.impl.LayoutLocalServiceVirtualLayoutsAdvice.invoke(LayoutLocalServiceVirtualLayoutsAdvice.java:197)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:118)
      at com.liferay.portal.service.impl.LayoutLocalServiceStagingAdvice.invoke(LayoutLocalServiceStagingAdvice.java:107)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:118)
      at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:71)
      at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:118)
      at com.liferay.portal.spring.aop.ServiceBeanAopProxy.invoke(ServiceBeanAopProxy.java:211)
      at $Proxy27.importLayouts(Unknown Source)
      at com.liferay.portal.service.LayoutLocalServiceUtil.importLayouts(LayoutLocalServiceUtil.java:1037)
      at com.liferay.portal.staging.StagingImpl.publishLayouts(StagingImpl.java:990)
      at com.liferay.portal.staging.StagingImpl.publishLayouts(StagingImpl.java:1066)
      at com.liferay.portal.staging.StagingImpl.publishLayouts(StagingImpl.java:1825)
      at com.liferay.portal.staging.StagingImpl.publishToLive(StagingImpl.java:1086)

      Also another bug is:
      9. Edit the 2nd article
      10. Click the chinese translation
      11. Click remove translation
      12. Go back to web content page, the title is empty and in the database it's <root />

      Attachments

        Issue Links

          Activity

            People

              mark.jin Mark Jin (Inactive)
              amos.fong Amos Fong
              Kiyoshi Lee Kiyoshi Lee
              Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:
                9 years, 31 weeks, 2 days ago

                Packages

                  Version Package
                  6.1.30 EE GA3
                  6.2.0 CE M3