我在门户网站上遇到了有关通知的问题(Liferay 6.2)。
当我有想法从DB表USERNOTIFICATIONEVENT中清除旧的(无用的)通知时,我的通知portlet崩溃。
每次打开通知时,都会出现以下错误:
Caused by: com.liferay.portal.NoSuchUserNotificationEventException: No UserNotificationEvent exists with the primary key 115765
虽然我的表是空的,但我登录的用户通知显示为20(例如),当我点击它们时,我收到错误。使用java代码创建新通知,该表会更新并插入新通知,因此通知显示为21.
在USERNOTIFICATIONEVENT只存在1条记录时,如何才能看到21条通知?
答案 0 :(得分:0)
怎么可能?这是因为你在没有完全理解数据库的情况下操纵了数据库,这是一种常见的灾难处理方法。检查where liferay site will store in which table details will fetch?以查找不打扰的参数。如果您对数据库执行任何操作,请通过API执行此操作,而不是通过数据库操作。同时检查该答案中包含的链接。
通常还有其他数据结构,例如用于权限检查的元数据或您需要更新的全文索引。这不是一个完整的清单
恢复备份是最安全的恢复方式,因为即使您现在可以正常工作,升级到下一版本的例程也可能会发现意外数据。然后太晚了