我正在尝试将产品添加到购物车中,如下所示:
cartFacade.addToCart("M300044", 2);
它失败了:未找到代码为“M300044”的产品!
当我调试代码时,我发现此查询由FlexibleSearchService.search(查询)执行:
SELECT {c:pk} FROM {Product AS c} WHERE {c:code}='M300044'
如果我在hybris管理控制台上执行此查询,我会得到一个产品。
为什么FlexibleSearchService不能找到它?是否与在某处设置目录版本有关?
答案 0 :(得分:2)
在这种情况下,这是因为我是从Test类做的,所以hybris找不到产品,因为junit租户里没有任何数据。
所以我必须在Test类的setup方法中创建数据,该方法在调用实际测试方法之前执行。
答案 1 :(得分:1)
你需要确保你已经设置了session user = admin的一件事,因为如果对你的产品有一个限制,那么你的测试用例将不起作用
答案 2 :(得分:0)
检查hmc中产品的可用库存。愿这可以帮到你
答案 3 :(得分:0)
我认为这是一个SYNCHRONIZATION问题。 STAGED产品版本与Online不一致。 你有两个选择。 HMC>系统>方面搜索>索引器向导。 产品驾驶舱。
答案 4 :(得分:0)
初始化Junit租户,方法是检查导入样本数据是否正确,以便生产中的数据可用于测试。
答案 5 :(得分:-1)
您需要为hmc中的产品制作完整的SOLR索引,然后才能在前端存储中显示或使用hypris API 希望有帮助