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

Page Template merge fails when User is subscribed to Asset Publisher during Asset Publisher Entry Check

    Details

      Description

      Page Template merge fails when User is subscribed to Asset Publisher during Asset Publisher Entry Check is performed.

      Steps
      1. Set the below property portal-ext.properties:

      asset.publisher.check.interval=1
      

      2. Open the liferay-portlet.xml file and edit the below lines:

      <property-key>asset.publisher.check.interval</property-key>
      <time-unit>hour</time-unit>
      

      to

      <property-key>asset.publisher.check.interval</property-key>
      <time-unit>minute</time-unit>
      

      3. Start Liferay
      4. Create a Page Template
      5. Add an Asset Publisher to the Page Template
      6. Add some content (a web content article or document for example)
      7. In the Asset Publisher, navigate to Subscriptions and enable Email Subscriptions
      8. Create a Page using the Page Template
      9. Subscribe to the Asset Publisher
      10. Wait one minute

      Expected
      No errors are reported in the log.
      Actual
      The below error is reported in the log:

      16:59:57,424 ERROR [liferay/scheduler_dispatch-2][SitesImpl:1637] java.lang.NullPointerException
      java.lang.NullPointerException
              at com.liferay.portlet.sites.util.SitesImpl.applyLayoutPrototype(SitesImpl.java:240)
              at com.liferay.portlet.sites.util.SitesImpl.doMergeLayoutPrototypeLayout(SitesImpl.java:1634)
              at com.liferay.portlet.sites.util.SitesImpl.mergeLayoutPrototypeLayout(SitesImpl.java:1169)
              at com.liferay.portlet.sites.util.SitesUtil.mergeLayoutPrototypeLayout(SitesUtil.java:266)
              at com.liferay.portal.service.impl.LayoutLocalServiceVirtualLayoutsAdvice.invoke(LayoutLocalServiceVirtualLayoutsAdvice.java:102)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:111)
              at com.liferay.portal.service.impl.LayoutLocalServiceStagingAdvice.invoke(LayoutLocalServiceStagingAdvice.java:141)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:111)
              at com.liferay.portal.spring.transaction.DefaultTransactionExecutor.execute(DefaultTransactionExecutor.java:62)
              at com.liferay.portal.spring.transaction.TransactionInterceptor.invoke(TransactionInterceptor.java:51)
              at com.liferay.portal.spring.aop.ServiceBeanMethodInvocation.proceed(ServiceBeanMethodInvocation.java:111)
              at com.liferay.portal.spring.aop.ServiceBeanAopProxy.invoke(ServiceBeanAopProxy.java:175)
              at com.sun.proxy.$Proxy34.getLayout(Unknown Source)
              at com.liferay.portal.service.LayoutLocalServiceUtil.getLayout(LayoutLocalServiceUtil.java:230)
              at com.liferay.portlet.assetpublisher.util.AssetPublisherImpl._checkAssetEntries(AssetPublisherImpl.java:1256)
              at com.liferay.portlet.assetpublisher.util.AssetPublisherImpl.access$0(AssetPublisherImpl.java:1251)
              at com.liferay.portlet.assetpublisher.util.AssetPublisherImpl$2.performAction(AssetPublisherImpl.java:318)
              at com.liferay.portal.kernel.dao.orm.BaseActionableDynamicQuery.performActionsInSingleInterval(BaseActionableDynamicQuery.java:324)
              at com.liferay.portal.kernel.dao.orm.BaseActionableDynamicQuery.performActions(BaseActionableDynamicQuery.java:46)
              at com.liferay.portlet.assetpublisher.util.AssetPublisherImpl.checkAssetEntries(AssetPublisherImpl.java:324)
              at com.liferay.portlet.assetpublisher.util.AssetPublisherUtil.checkAssetEntries(AssetPublisherUtil.java:87)
              at com.liferay.portlet.assetpublisher.messaging.CheckAssetEntryMessageListener.doReceive(CheckAssetEntryMessageListener.java:29)
              at com.liferay.portal.kernel.messaging.BaseMessageListener.receive(BaseMessageListener.java:26)
              at sun.reflect.GeneratedMethodAccessor623.invoke(Unknown Source)
              at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
              at java.lang.reflect.Method.invoke(Unknown Source)
              at com.liferay.portal.kernel.bean.ClassLoaderBeanHandler.invoke(ClassLoaderBeanHandler.java:67)
              at com.sun.proxy.$Proxy297.receive(Unknown Source)
              at com.liferay.portal.kernel.scheduler.messaging.SchedulerEventMessageListenerWrapper.receive(SchedulerEventMessageListenerWrapper.java:77)
              at com.liferay.portal.kernel.messaging.InvokerMessageListener.receive(InvokerMessageListener.java:72)
              at com.liferay.portal.kernel.messaging.ParallelDestination$1.run(ParallelDestination.java:71)
              at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask._runTask(ThreadPoolExecutor.java:682)
              at com.liferay.portal.kernel.concurrent.ThreadPoolExecutor$WorkerTask.run(ThreadPoolExecutor.java:593)
              at java.lang.Thread.run(Unknown Source)
      

        Attachments

          Issue Links

            Activity

              People

              • Assignee:
                lu.liu Lu Liu
                Reporter:
                preston.crary Preston Crary
                Participants of an Issue:
                Recent user:
                Esther Sanz
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved:
                  Days since last comment:
                  4 years, 22 weeks, 1 day ago

                  Packages

                  Version Package
                  6.2.4 CE GA5
                  6.2.X EE
                  7.0.0 M7