Java 一般原则';s getRoles返回空数组
这是创建主体对象的代码Java 一般原则';s getRoles返回空数组,java,tomcat,userprincipal,genericprincipal,Java,Tomcat,Userprincipal,Genericprincipal,这是创建主体对象的代码 List<String> roles = new ArrayList(); roles.add(userRole); this.principal = new GenericPrincipal(username,"***********",roles); 从负责人那里获取角色 GenericPrincipal principal = (GenericPrincipal)request.getUserPrincipal(); String name = pri
List<String> roles = new ArrayList();
roles.add(userRole);
this.principal = new GenericPrincipal(username,"***********",roles);
从负责人那里获取角色
GenericPrincipal principal = (GenericPrincipal)request.getUserPrincipal();
String name = principal.getName();
GenericPrincipal principal = (GenericPrincipal)request.getUserPrincipal();
String[] roles = principal.getRoles();
当我打印主体对象时,我得到了[username()]
我能从校长那里得到名字,但不能从角色那里得到。
角色[]的长度为0
我甚至尝试了getPassword()方法。它返回null。只有getName()方法才能正常工作
为什么角色数组为空?如何正确获取角色?此处没有足够的信息回答您的问题。请求对象是什么?您有getRoles()方法的代码吗?您可以尝试将角色更改为ArrayList roles=principal.getRoles();它是HttpServletRequest对象,getRoles()实现是默认的tomcat实现。@user8537453 ArrayList也不起作用。