点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)你好社区 会话购物车不再有效后...
点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供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。
de.hybris.platform.commerceservices.order.impl.DefaultCommerceCartRestorationStrategy#restoreCart
解决方法是覆盖默认策略并在还原/重置/移除购物车之前调用setCurrency。 或者,您可能会争论是否需要设置当前货币,因为可能已经设置了当前货币。 您可以做最适合自己的事情。
一周热门 更多>