com.sun.proxy.$Proxy 439 不能强制转换为 DDLRecordSetLocalService



我正在尝试从Liferay DXP 7.0.2 GA3获取所有动态数据列表(DDL(,但是 在我使用该代码获取所有 DDL 之后

List<DDLRecordSet> ddlList = DDLRecordSetLocalServiceUtil.getDDLRecordSets(
com.liferay.portal.kernel.dao.orm.QueryUtil.ALL_POS,
com.liferay.portal.kernel.dao.orm.QueryUtil.ALL_POS);

我收到一个错误说

com.sun.proxy.$Proxy439 cannot be cast to com.liferay.dynamic.data.lists.service.DDLRecordSetLocalService

Java JDK: 1.8.0_251

格拉德尔版本:5.6.4

JavaHome: C:\Program Files\Java\jdk1.8.0_251

与其使用DDLRecordSetLocalServiceUtil(带有静态方法的旧兼容类(,不如让 OSGi 通过@Reference注入服务。

这只能在@Component中完成,但更清楚地表明,只有在所有依赖项都正确连接时才会调用您的代码。

但在执行此操作之前,您需要升级到 GA7 并打补丁。稍后,最好进一步升级并保持当前版本。

最新更新