尝试通过SmartEdit编辑嵌套组件时出错

2020-08-19 18:47发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)使用高级编辑时-在嵌套编辑器弹出...

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

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


使用高级编辑时-在嵌套编辑器弹出窗口中发生错误。

弹出窗口显示嵌套的组件-但每个嵌套的组件都有一个错误替代文本

控制台也显示2个错误请求。 替代文字

在处理嵌套组件之前,似乎目录版本已丢失。

控制台日志中的错误是:INFO [hybrisHTTP31] [RestHandlerExceptionResolver]翻译异常[java.lang.IllegalArgumentException]:catalogVersion不能为null或为空ERROR [hybrisHTTP31] [RestHandlerExceptionResolver] java.lang.IllegalArgumentException:catalogVersion不得为 位于de.hybris.platform.cms2.servicelayer.daos.impl.DefaultCMSItemDao.findByUid(DefaultCMSItemDao.java:54)处com.google.common.base.Preconditions.checkArgument(Preconditions.java:122)处的null或空白。 hybris.platform.cms2.servicelayer.services.admin.impl.DefaultCMSAdminItemService.findByUid(DefaultCMSAdminItemService.java:50)位于de.hybris.platform.cms2.servicelayer.services.admin.impl.DefaultCMSAdminItemService.findByUid(DefaultCMSAdminItemService.java:69) )的de.hybris.platform.cmsfacades.uniqueidentifier.functions.DefaultCmsItemModelUniqueIdentifierConverter.convert(DefaultCmsItemModelUniqueIdentifierConverter.java:96)的de.hybris.platform.cmsfacades.uniqueidentifier.functions.Def aultCmsItemModelModelUniqueIdentifierConverter.convert(DefaultCmsItemModelUniqueIdentifierConverter.java:1)at de.hybris.platform.cmsfacades.uniqueidentifier.impl.DefaultUniqueItemIdentifierService.lambda $ 4(DefaultUniqueItemIdentifierService.java:112)at java.util.Optionalmap(可选)。 de.hybris.plats.cmsfacades.uniqueidentifier.impl.DefaultUniqueItemIdentifierService.getItemModel(DefaultUniqueItemI155)上的de.hybris.platform.cmsfacades.uniqueidentifier.impl.DefaultUniqueItemIdentifierService.getItemModel(DefaultUniqueItemIdentifierService.java:111)。 platform.cmswebservices.interceptor.CatalogVersionPermissionInterceptor.preHandle(CatalogVersionPermissionInterceptor.java:62)

我们从SAP Commerce v6.5开始使用smartedit

(37.2 kB)
6条回答
Aaron 3364
2020-08-19 19:46

大家好,

我认为最好的解决方法是从下面的类中删除attributeDescriptor.getPartOf():

公共类NestedOrPartOfAttributePredicate实现Predicate 
 {
     @Override
     公共布尔测试(最终AttributeDescriptorModel attributeDescriptor)
     {
         返回attributeDescriptor.getPartOf()||  getNestedAttributePredicates()。stream()。anyMatch(predicate-> predicate.test(attributeDescriptor));
     }

   ....

 } 

最诚挚的问候,

Łukasz

一周热门 更多>