1

次のように、商品をカートに追加しようとしています。

cartFacade.addToCart("M300044", 2);

そして、次のエラーで失敗します:コード 'M300044' の製品が見つかりません!

コードをデバッグすると、次のクエリが FlexibleSearchService.search(query) によって実行されることがわかりました。

SELECT {c:pk} FROM {Product AS c} WHERE {c:code}='M300044' 

hybris 管理コンソールでこのクエリを実行すると、結果として製品が得られます。

しかし、FlexibleSearchService がそれを見つけられないのはなぜですか? カタログのバージョンをどこかに設定することと関係がありますか?

4

6 に答える 6

3

この場合、テスト クラスからこれを実行していたため、junit テナントにデータがまったくないため、hybris が製品を見つけることができませんでした。

そのため、実際のテスト メソッドが呼び出される前に実行される Test クラスの setup メソッドでデータを作成する必要がありました。

于 2013-10-08T15:11:51.883 に答える
1

これは同期の問題だと思います。STAGED 製品バージョンはオンラインに対応していません。2 つのオプションがあります。HMC > システム > ファセット検索 > インデクサー ウィザード。製品コックピット。

于 2015-06-05T08:14:01.407 に答える
1

セッション user = admin を設定したことをもう 1 つ確認する必要があります。これは、製品に制限が適用されている場合、テスト ケースが機能しないためです。

于 2013-10-10T07:08:19.710 に答える
0

hmc で製品の在庫を確認してください。これが役に立ちますように

于 2013-10-03T16:29:46.707 に答える
-1

hmc の製品がフロント エンド ストアに表示される前に、または hypris API を使用して製品の完全な SOLR インデックスを作成する必要があります。

于 2013-09-30T17:48:01.127 に答える