为什么购物车还原有时会引发JaloObjectNoLongerValidException?

2020-09-12 07:05发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好社区 会话购物车不再有效后...

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

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


你好社区

会话购物车不再有效后(默认情况下,此值为 commerceservices.cartValidityPeriod = 12960000 转换为150天),当用户使用时,我们开始收到 JaloObjectNoLongerValidException 错误 正在登录。我们将问题追溯到购物车还原代码。

de.hybris.platform.commerceservices.order.impl.DefaultCommerceCartRestorationStrategy#restoreCart

  if(isCartInValidityPeriod(cartModel)){
    ...
  }其他{
      尝试{
          changes.addAll(rebuildSessionCart(parameter));
      } catch(final CommerceCartModificationException e){
      抛出新的CommerceCartRestorationException(e.getMessage(),e);
      }
  }
  commerceCommonI18NService.setCurrentCurrency(cartModel.getCurrency());

  

这里的问题是rebuildSessionCart()方法将在cartModel上执行modelService.remove(),然后在尝试调用cartModel.getCurrency()时会抛出JaloObjectNoLongerValidException。

解决方法是覆盖默认策略并在还原/重置/移除购物车之前调用setCurrency。

4条回答
ZJXianG
2020-09-12 07:56

关于报告该错误,我们很不幸地发现,与仅在此处解决问题并进行报告相比,报告错误对于我们的时间投入而言花费太多。

>

通常,合适的人会从此论坛中挑出问题,并在内部进行报告:)

一周热门 更多>

相关问答