非超级管理员账号登录,permissionMenu会报UnsupportedOperationException错误

Blade 未结 2 121
572069853
572069853 剑童 2026-01-16 10:42

一、该问题的重现步骤是什么?

  1. 使用非超级管理员账号登录,permissionMenu会报UnsupportedOperationException错误

  2. 原因:
    image.png

2. 这个问题出现的原因是 List.of() 或 Arrays.asList() 返回的列表是不可变的(Immutable),而 CacheUtil 在反序列化时尝试向这个列表中添加元素,导致抛出 UnsupportedOperationException

3.


二、你期待的结果是什么?实际看到的又是什么?


三、你正在使用的是什么产品,什么版本?在什么操作系统上?


四、请提供详细的错误堆栈信息,这很重要。


五、若有更多详细信息,请在下面提供。

2条回答
  • 2026-01-16 15:06

    你的具体操作步骤是什么,配置的代码是什么麻烦再补充描述下,我们需要按照你的步骤来重现这个问题。最好是在bladex原版工程上增加代码来重现,尽量不用你现有的业务代码。

    0 讨论(0)
  • 2026-01-16 21:20

    非管理员账号访问加了@PreAuth(menu = "***")注解权限的接口才会报错。


    已解决,permissionMenu中的以下代码

    image.png

    修改为

    image.png

    就可以了,.toList()返回的列表是不可变的(Immutable),而 CacheUtil 在反序列化时尝试向这个列表中添加元素,导致抛出 UnsupportedOperationException。

    0 讨论(0)
提交回复