相关疑难解决方法(0)

设置多个@ControllerAdvice @ExceptionHandlers的优先级

我有多个用类注释的类@ControllerAdvice,每个类都带有一个@ExceptionHandler方法.

一个处理Exception的目的是如果找不到更具体的处理程序,则应该使用它.

可悲的是,Spring MVC似乎总是使用最通用的case(Exception)而不是更具体的case(IOException例如).

这是人们期望Spring MVC的表现吗?我正在尝试模拟来自Jersey的模式,它评估每个ExceptionMapper(等效组件)以确定它处理的声明类型与已抛出的异常的距离,并始终使用最近的祖先.

exception-handling spring-mvc

68
推荐指数
5
解决办法
4万
查看次数

自定义SpringSecurity OAuth 2错误输出(未授权)

我们使用Spring Security OAuth2保护我们的REST服务(用于服务器到服务器的通信,无需用户参与).但是,当尝试在浏览器中访问受保护资源时,它将显示:

<oauth>
    <error_description>
        An Authentication object was not found in the SecurityContext
    </error_description>
    <error>unauthorized</error>
</oauth>
Run Code Online (Sandbox Code Playgroud)

我们希望这是我们自己选择的自定义页面.有办法吗?

设置访问被拒绝页面将不起作用.首先,它需要定义我们没有的登录页面,因为这是一个纯粹的服务器到服务器通信.对于另一个,这个属性据说自从Spring 3.0以后就被弃用了.

无论如何..调试我的方式进入OAuth错误处理.并且发现响应似乎以某种方式通过我在错误页面上看到的信息得到了丰富.显然根本没有完成页面渲染,所以看起来没有要替换的错误页面..?!

至少我们想要隐藏我们使用OAuth的事实,如果我们不能拥有一个"真正的"页面,只显示一个基本的"拒绝"文本.所以也许我将不得不扩展spring安全处理程序或添加一个自定义过滤器修改响应?!

也许重定向到我们的错误页面?

谢谢!

编辑

对于我们当前的设置,请在此查看我的其他问题

java spring-security oauth-2.0

15
推荐指数
1
解决办法
8031
查看次数

自定义oath2令牌请求以接受额外数据

我正在使用带有弹簧安全性的平针织物和spring-oauth2.我的应用程序正常工作,端点"/ oauth/token".

我想更改端点以接受更多数据.要求是,我想向令牌API发送更多细节(即设备详细信息操作系统,手机/平板电脑/网络等).所以,我想覆盖端点,如果验证成功,我想将这些额外信息存储在数据库中.

我找不到任何与以这种方式更改API相关的内容.有人可以帮忙吗?

spring-security oauth-2.0 jersey-2.0 spring-security-oauth2

5
推荐指数
1
解决办法
891
查看次数