AssetEntryQueryは設定したすべてのパラメータを無視しているため、ワイルドカードクエリを実行し、すべてのアセットエントリを取得しています。私が今やっているのLiferay 7はAssetEntryQueryパラメータを無視します
スニペット:私はこのコードを実行すると
long[] classTypeIds = new long[] { 30837 };
AssetEntryQuery assetQuery = new AssetEntryQuery();
assetQuery.setClassTypeIds(classTypeIds);
List<AssetEntry> entries = AssetEntryLocalServiceUtil.getEntries(assetQuery);
foreach (AssetEntry entry : entries) {
System.out.printf("Entry with classTypeId %d expected %d", entry.getClassTypeId(), 30837);
}
、それは彼らのclassTypeIdがフィルタリングされずにLiferayのからすべてのエントリのリストを返します。
出力:
[...]
Entry with classTypeId 0 expected 30837
Entry with classTypeId 0 expected 30837
Entry with classTypeId 28920 expected 30837
Entry with classTypeId 30331 expected 30837
Entry with classTypeId 30837 expected 30837
Entry with classTypeId 30837 expected 30837
Entry with classTypeId 30837 expected 30837
Entry with classTypeId 30921 expected 30837
[...]
は、Liferayは私のAssetEntryQuery paramsはを無視しているか、Liferayの自体の中にバグですので、私は何かが足りないのですか?
あなたの事件について私は興味があります。コードは、別の 'classTypeId'があることを認識しています(私の答えで述べたように、DBに保持されている0の値には関係しません)。 'classNameId'があなたのユースケースにうまくいかない場合は、Liferayフォーラムに投稿することをお勧めします。 https://web.liferay.com/community/forums –