#19084·dataease

[错误] 定时报告 - 接收人权限: 当接收人拥有对数据源的使用权限时, queryResourcePermission 为空指针

作者: Wanpl-Java创建于 2026年9月7日更新于 2026年9月7日
标签状态:待处理状态:待反馈

**DataEase 版本** 2.10.22 **运行方式** 安装包 / Docker **Bug 描述** 定时报告数据权限选择"接收人权限"时,如果某个系统内的接收人同时拥有"查看+使用"权限,任务执行失败,出现 NullPointerException。改为"创建人权限"正常;取消该接收人对该数据源的"使用"权限(仅保留"查看")后,"接收人权限"也可以正常发送。 **Bug 重现步骤** 1. 准备用户 A,在【权限配置】中对该数据源勾选"查看"和"使用"(不勾管理/授权) 2. 创建定时报告,数据权限选择"接收人权限",接收人包含用户 A(可与其他用户一起) 3. 执行定时报告 4. 查看执行日志报错 5. 取消用户 A 对该数据源的"使用",仅保留"查看",再次执行 → 成功 6. 数据权限改为"创建人权限"→ 成功 **错误日志** java.lang.NullPointerException: Cannot invoke "java.lang.Integer.intValue()" because the return value of "java.util.Map.get(Object)" is null at io.dataease.xpack.permissions.auth.server.ResourceAuthServer.queryResourcePermission(...) **预期结果** 接收人对数据源拥有"查看+使用"属于合法授权,定时报告按接收人权限执行时应正常出数/发送,不应 NPE。 **实际结果** 任务失败;取消"使用"或改用创建人权限后恢复正常。

内容来源: dataease/dataease