Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/331.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java ApacheShiro,@RequiresRoles,401错误代码_Java_Apache_Shiro_Jaas - Fatal编程技术网

Java ApacheShiro,@RequiresRoles,401错误代码

Java ApacheShiro,@RequiresRoles,401错误代码,java,apache,shiro,jaas,Java,Apache,Shiro,Jaas,我已经用@RequiresRoles(“role”)注释标记了我的REST方法,我确实希望返回401,403错误代码(当主体没有指定角色或未经过身份验证时) 但是org.apache.shiro.authz.UnauthorizedException包装在javax.servlet.ServletException:过滤请求失败500返回错误代码 如何配置根据异常返回的错误代码? Thx.根据JAX-RS规范,封装到ServletException中是可以的 由异常映射提供程序将org.apac

我已经用
@RequiresRoles(“role”)
注释标记了我的
REST
方法,我确实希望返回
401
403
错误代码(当主体没有指定角色或未经过身份验证时)

但是
org.apache.shiro.authz.UnauthorizedException
包装在
javax.servlet.ServletException:
过滤请求失败
500
返回错误代码

如何配置根据异常返回的错误代码?


Thx.

根据JAX-RS规范,封装到
ServletException
中是可以的

由异常映射提供程序将
org.apache.shiro.authz.UnauthorizedException
映射到具有正确状态的响应。您应该在实现中添加一个

我建议将
org.apache.shiro.authz.UnauthorizedException
映射到带有
response.Status.probled
的响应