Grails春季安全核心,春季安全休息IllegalStateException

时间:2018-12-07 14:08:58

标签: grails spring-security spring-security-rest

当尝试对服务器的某些数据进行http(获取或发布)调用时,出现此IllegalStateException异常。我正在构建使用其他应用程序方法的应用程序。为客户端命名app1,为服务器命名app2。 app2具有spring安全核心,spring security rest插件。当我执行api / login时,令牌被渲染回app1。可以确定插件已经处理了会话吗?还是我自己处理? 文件对我来说很难理解,但我认为还不清楚。我正在使用以下版本的插件

        compile ':spring-security-core:2.0-RC3'
        compile ':spring-security-ldap:2.0.0'
        compile ':spring-security-rest:1.4.0', {
            excludes: 'spring-security-core'
        }
        compile ':cors:1.1.6'

我将为一个get呼叫粘贴错误,对于我在app1中进行的每个呼叫,都会引发此错误。告诉我您是否还需要其他帮助您解决我的问题。

     Error |
2018-12-07 10:53:54,921 [http-bio-8080-exec-2] ERROR errors.GrailsExceptionResol
ver  - IllegalStateException occurred when processing request: [GET] /TERA/repor
te/getInstancias
Cannot create a session after the response has been committed. Stacktrace follow
s:
Message: Cannot create a session after the response has been committed
    Line | Method
->>   18 | doCall             in SecurityFilters$_closure1_closure2_closure3
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|     99 | processFilterChain in com.odobo.grails.plugin.springsecurity.rest.Res
tTokenValidationFilter
|     66 | doFilter . . . . . in     ''
|     53 | doFilter           in grails.plugin.springsecurity.web.filter.GrailsA
nonymousAuthenticationFilter
|    108 | doFilter . . . . . in com.odobo.grails.plugin.springsecurity.rest.Res
tAuthenticationFilter
|     62 | doFilter           in grails.plugin.springsecurity.web.authentication
.logout.MutableLogoutFilter
|     63 | doFilter . . . . . in com.odobo.grails.plugin.springsecurity.rest.Res
tLogoutFilter
|     59 | doFilter           in grails.plugin.springsecurity.web.SecurityReques
tHolderFilter
|     82 | doFilter . . . . . in com.brandseye.cors.CorsFilter
|   1110 | runWorker          in java.util.concurrent.ThreadPoolExecutor
|    603 | run . . . . . . .  in java.util.concurrent.ThreadPoolExecutor$Worker
^    722 | run                in java.lang.Thread

谢谢!

1 个答案:

答案 0 :(得分:0)

我发现服务范围可能导致此错误,我的范围是原型,这就是导致我出错的原因。我已将其更改为会话,并且运行良好! 问题是某些必须运行的作业没有。所以我将范围放回原型。