Java 如何在Liferay 7.2中使用DynamicQuery查询最新版本的JournalArticle

Java 如何在Liferay 7.2中使用DynamicQuery查询最新版本的JournalArticle,java,liferay,liferay-7,dynamicquery,Java,Liferay,Liferay 7,Dynamicquery,我的代码中有以下查询: DynamicQuery journalArticleDynamicQuery = JournalArticleLocalServiceUtil.dynamicQuery(); journalArticleDynamicQuery.add(PropertyFactoryUtil.forName("DDMStructureKey").eq("MY_STRUCTURE")); journalArticleDynamicQuery.add(PropertyFactoryUt

我的代码中有以下查询:

DynamicQuery journalArticleDynamicQuery = JournalArticleLocalServiceUtil.dynamicQuery();

journalArticleDynamicQuery.add(PropertyFactoryUtil.forName("DDMStructureKey").eq("MY_STRUCTURE")); 
journalArticleDynamicQuery.add(PropertyFactoryUtil.forName(Field.GROUP_ID).eq(groupId));
journalArticleDynamicQuery.add(PropertyFactoryUtil.forName(Field.FOLDER_ID).eq(folderId));
journalArticleDynamicQuery.add(PropertyFactoryUtil.forName(Field.STATUS).eq(0));
journalArticleDynamicQuery.addOrder(OrderFactoryUtil.desc(Field.DISPLAY_DATE));

JournalArticleLocalServiceUtil.dynamicQuery(journalArticleDynamicQuery, 0, 30)
但这将返回所有版本的JournalArticle。我的问题是:如何使用前面的查询仅查询最新版本的JournalArticle


我已在中发布了此消息,但尚未得到任何响应。

我发现,如果使用“搜索”方法并将“版本”参数传递为null,则只能获得最新版本的JournalArticle:

List<JournalArticle> journalArticles = JournalArticleLocalServiceUtil.search(
    themeDisplay.getCompanyId(), 
    themeDisplay.getScopeGroupId(), 
    folderIds,
    JournalArticleConstants.CLASSNAME_ID_DEFAULT,
    null,
    null,
    null,
    null,
    null,
    "MY_STRUCTURE",
    null,
    myDate,
    null,
    0,
    null, 
    true,
    startIndex,
    endIndex,
    OrderByComparatorFactoryUtil.create("JournalArticle", Field.DISPLAY_DATE, false)
);
List journalArticles=JournalArticleLocalServiceUtil.search(
主题显示。getCompanyId(),
主题显示。getScopeGroupId(),
folderIds,
JournalArticleConstants.CLASSNAME\u ID\u默认值,
无效的
无效的
无效的
无效的
无效的
“我的_结构”,
无效的
myDate,
无效的
0,
无效的
是的,
startIndex,
endIndex,
OrderByComparatorFactoryUtil.create(“JournalArticle”,Field.DISPLAY\u DATE,false)
);

我发现,如果使用“搜索”方法并将“version”参数传递为null,则只能获得JournalArticle的最新版本:

List<JournalArticle> journalArticles = JournalArticleLocalServiceUtil.search(
    themeDisplay.getCompanyId(), 
    themeDisplay.getScopeGroupId(), 
    folderIds,
    JournalArticleConstants.CLASSNAME_ID_DEFAULT,
    null,
    null,
    null,
    null,
    null,
    "MY_STRUCTURE",
    null,
    myDate,
    null,
    0,
    null, 
    true,
    startIndex,
    endIndex,
    OrderByComparatorFactoryUtil.create("JournalArticle", Field.DISPLAY_DATE, false)
);
List journalArticles=JournalArticleLocalServiceUtil.search(
主题显示。getCompanyId(),
主题显示。getScopeGroupId(),
folderIds,
JournalArticleConstants.CLASSNAME\u ID\u默认值,
无效的
无效的
无效的
无效的
无效的
“我的_结构”,
无效的
myDate,
无效的
0,
无效的
是的,
startIndex,
endIndex,
OrderByComparatorFactoryUtil.create(“JournalArticle”,Field.DISPLAY\u DATE,false)
);

+1仅用于交叉引用;)。同时,讨论已在链接的Liferay论坛线程上开始。+1仅用于交叉引用;)。与此同时,有关链接Liferay论坛线程的讨论已经开始。