pagedFlexibleSearchServiceを使用して以下のクエリを実行しようとしています。Hybris Flexiquery:列があいまいに定義されています
SELECT {u: PK}, {a: PK} FROM { User AS u}, {Address AS a} WHERE {u: PK} = {a: owner}
私は、次の項目タイプを返すようにflexibleSearchQueryを設定しています:
flexiQuery.setResultClassList(UserModel.class,String.class));
私は、文字列としてUserモデルとAddressModelのPKを返しています。
問題は、このクエリをJavaコードで実行しているときに、SQLExceptionをスローします。列があいまいに定義されています。私はSELECT * FROM (SELECT....) rownum <10
を含む変換されたクエリに気づいた。 しかし、私はHACで同じflexiqueryを発射するとき、それは完璧にうまく実行されます。
誰かが問題の原因を教えてください。
よろしく、 Farhan
ユーザーのみ(お客様)のための柔軟な検索を行うことが多く、より簡単だろう
Stringを設定したのはなぜですか? 'flexiQuery.setResultClassList(UserModel.class、AddressModel.class));'にする必要があり、アドレスPKはAddressModelにマップされます。 –