由于编辑网页内容时,救生筏会自动创建文章的新版本,因此我希望获得特定文章的最新版本。我使用的动态查询如下:
DynamicQuery query = DynamicQueryFactoryUtil.forClass(JournalArticle.class, PortletClassLoaderUtil.getClassLoader());
query.setProjection(ProjectionFactoryUtil.max("version"));
List<JournalArticle> jList = (List<JournalArticle>)JournalArticleLocalServiceUtil.dynamicQuery(query);我在谷歌上搜索,注意到ProjectionFactoryUtil.max("version")经常被使用。但在我的例子中,异常引发了:
"java.lang.Double cannot be cast to com.liferay.portlet.journal.model.JournalArticle"我是不是遗漏了什么?
发布于 2013-11-10 04:34:18
ProjectionFactoryUtil.max("version")在DynamicQuery中的使用将返回双值,这将是字段“版本”的最大值。您正试图将双类型值转换为JournalArticle,这就是为什么要面对这个异常。
从手机发送的。
发布于 2015-09-07 07:07:13
至于获取JournalArticle的最新版本的意图:JournalArticleLocalServiceUtil有一个API方法fetchLatestArticle (有一些不同的参数集,例如,喜欢发表的文章而不是未发布的文章)。在Liferay5.x中,它被称为getLatestArticle。
https://stackoverflow.com/questions/19876548
复制相似问题