带有主页标志的ContentPage无法从CMSCockpit同步

2020-09-20 09:23发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)嗨,我正在尝试将新的Conten...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


嗨,我正在尝试将新的ContentPage从暂存同步到联机,我所做的更改是将该页面标记为"主页"。 如果我从HMC同步整个目录,则工作正常,但是当我从CMSCockpit同步整个目录时,同步完成,并且所有将" homepage"标志设置为true的页面现在都设置为false。 我最近更新为Hybris 5.7,以前此机制运行良好。 是否有任何有关此问题的文档或应该如何处理主页标志? 有没有办法解决这个问题? 谢谢亚历山德罗

7条回答
clasier
2020-09-20 09:54 .采纳回答

嘿,以下解决方案对我来说很好。

 公共类YourClassName扩展CmsContentPagePrepareInterceptor
  {
      @Override
      受保护的void resetHomepageFlag(Collection  contentPages,ContentPageModel currentPageModel,InterceptorContext ctx)
      {
          如果(this.getCmsAdminPageService()。getActiveCatalogVersion()。equals(currentPageModel.getCatalogVersion()))
          {
              super.resetHomepageFlag(contentPages,currentPageModel,ctx);
          }
      }
  }

  

别忘了覆盖原始的Spring-Bean(相同的ID):

  
           
      

  

或使用您的类创建一个新bean并覆盖映射。

  
               
          
  
              
              
          
 

  

要解决的问题:给定了在线和暂存目录版本。 在同步过程中,在线项目上将调用预拦截器。 拦截器将加载当前的活动目录版本-但这是暂存版本,而不是联机版本。 因此,他们获得所有暂存的 ContentPages 的列表,并将它们与在线版本项目进行比较。 因此,它检测到还有另一个带有活动主页标记的项目,并将属性设置为 false

我的修正:仅当 currentPageModel catalogVersion 等于 sessionCatalogVersion 时,才使用原始逻辑。 如果您对商品进行了正常更改/进行了正常的保存操作,就会发生这种情况。

一周热门 更多>