Como monto esta query, para que automaticamente o order by de grupo e de unidade funcionam.
Tela normal
@Query(value = "SELECT DISTINCT i FROM InsumoLoja e LEFT OUTER JOIN e.insumo i " + "LEFT OUTER JOIN i.unidade u LEFT OUTER JOIN i.grupo g " + "WHERE (UPPER(i.nome) LIKE :nome or :nome is null) ") Page<Insumo> pesquisarRetornandoInsumo(@Param("nome") String nome, Pageable pageable);
Sem erro gera este SQL:
2021-02-26 16:15:02.375 INFO 40344 --- [nio-8100-exec-5] b.c.g.p.service.PrincipalService : Metodo que ajusta a a ordenacao e paginacao por campos da consulta Hibernate: select distinct insumo1_.PK_INSUMO as pk_insum1_17_, insumo1_.TS_CADASTRO as ts_cadas2_17_, insumo1_.TS_MOVIMENTACAO as ts_movim3_17_, insumo1_.ST_SITUACAO as st_situa4_17_, insumo1_.IP_MOVIMENTACAO as ip_movim5_17_, insumo1_.CD_LOGIN_MOVIMENTACAO as cd_login6_17_, insumo1_.ST_REGISTRO as st_regis7_17_, insumo1_.TP_OPERACAO as tp_opera8_17_, insumo1_.NR_VERSAO as nr_versa9_17_, insumo1_.CD_CODIGO_EAN as cd_codi10_17_, insumo1_.CD_CODIGO_EXPORTACAO as cd_codi11_17_, insumo1_.DS_DESCRICAO as ds_desc12_17_, insumo1_.ST_FASE as st_fase13_17_, insumo1_.FK_GRUPO as fk_grup16_17_, insumo1_.DS_NOME as ds_nome14_17_, insumo1_.ST_PESAVEL as st_pesa15_17_, insumo1_.FK_UNIDADE as fk_unid17_17_ from TAB_INSUMO_LOJA insumoloja0_ left outer join TAB_INSUMO insumo1_ on insumoloja0_.FK_INSUMO=insumo1_.PK_INSUMO left outer join TAB_UNIDADE unidade2_ on insumo1_.FK_UNIDADE=unidade2_.PK_UNIDADE left outer join TAB_GRUPO grupo3_ on insumo1_.FK_GRUPO=grupo3_.PK_GRUPO where upper(insumo1_.DS_NOME) like ? or ? is null order by insumo1_.DS_NOME asc offset 0 rows fetch next ? rows only Hibernate: select grupo0_.PK_GRUPO as pk_grupo1_16_0_, grupo0_.TS_CADASTRO as ts_cadas2_16_0_, grupo0_.TS_MOVIMENTACAO as ts_movim3_16_0_, grupo0_.ST_SITUACAO as st_situa4_16_0_, grupo0_.IP_MOVIMENTACAO as ip_movim5_16_0_, grupo0_.CD_LOGIN_MOVIMENTACAO as cd_login6_16_0_, grupo0_.ST_REGISTRO as st_regis7_16_0_, grupo0_.TP_OPERACAO as tp_opera8_16_0_, grupo0_.NR_VERSAO as nr_versa9_16_0_, grupo0_.FK_CATEGORIA as fk_cate12_16_0_, grupo0_.ST_GRUPO_TIPO as st_grup10_16_0_, grupo0_.DS_NOME as ds_nome11_16_0_, categoria1_.PK_CATEGORIA as pk_categ1_1_1_, categoria1_.TS_CADASTRO as ts_cadas2_1_1_, categoria1_.TS_MOVIMENTACAO as ts_movim3_1_1_, categoria1_.ST_SITUACAO as st_situa4_1_1_, categoria1_.IP_MOVIMENTACAO as ip_movim5_1_1_, categoria1_.CD_LOGIN_MOVIMENTACAO as cd_login6_1_1_, categoria1_.ST_REGISTRO as st_regis7_1_1_, categoria1_.TP_OPERACAO as tp_opera8_1_1_, categoria1_.NR_VERSAO as nr_versa9_1_1_, categoria1_.DS_NOME as ds_nome10_1_1_, categoria1_.FK_SETOR as fk_seto12_1_1_, categoria1_.ST_CATEGORIA_TIPO as st_cate11_1_1_, setor2_.PK_SETOR as pk_setor1_33_2_, setor2_.TS_CADASTRO as ts_cadas2_33_2_, setor2_.TS_MOVIMENTACAO as ts_movim3_33_2_, setor2_.ST_SITUACAO as st_situa4_33_2_, setor2_.IP_MOVIMENTACAO as ip_movim5_33_2_, setor2_.CD_LOGIN_MOVIMENTACAO as cd_login6_33_2_, setor2_.ST_REGISTRO as st_regis7_33_2_, setor2_.TP_OPERACAO as tp_opera8_33_2_, setor2_.NR_VERSAO as nr_versa9_33_2_, setor2_.DS_NOME as ds_nome10_33_2_, setor2_.ST_SETOR_TIPO as st_seto11_33_2_ from TAB_GRUPO grupo0_ left outer join TAB_CATEGORIA categoria1_ on grupo0_.FK_CATEGORIA=categoria1_.PK_CATEGORIA left outer join TAB_SETOR setor2_ on categoria1_.FK_SETOR=setor2_.PK_SETOR where grupo0_.PK_GRUPO=? Hibernate: select unidade0_.PK_UNIDADE as pk_unida1_34_0_, unidade0_.TS_CADASTRO as ts_cadas2_34_0_, unidade0_.TS_MOVIMENTACAO as ts_movim3_34_0_, unidade0_.ST_SITUACAO as st_situa4_34_0_, unidade0_.IP_MOVIMENTACAO as ip_movim5_34_0_, unidade0_.CD_LOGIN_MOVIMENTACAO as cd_login6_34_0_, unidade0_.ST_REGISTRO as st_regis7_34_0_, unidade0_.TP_OPERACAO as tp_opera8_34_0_, unidade0_.NR_VERSAO as nr_versa9_34_0_, unidade0_.DS_NOME as ds_nome10_34_0_, unidade0_.DS_SIGLA as ds_sigl11_34_0_, unidade0_.FK_UNIDADE as fk_unid14_34_0_, unidade0_.ST_UNIDADE_TIPO as st_unid12_34_0_, unidade0_.VR_VALOR as vr_valo13_34_0_, unidade1_.PK_UNIDADE as pk_unida1_34_1_, unidade1_.TS_CADASTRO as ts_cadas2_34_1_, unidade1_.TS_MOVIMENTACAO as ts_movim3_34_1_, unidade1_.ST_SITUACAO as st_situa4_34_1_, unidade1_.IP_MOVIMENTACAO as ip_movim5_34_1_, unidade1_.CD_LOGIN_MOVIMENTACAO as cd_login6_34_1_, unidade1_.ST_REGISTRO as st_regis7_34_1_, unidade1_.TP_OPERACAO as tp_opera8_34_1_, unidade1_.NR_VERSAO as nr_versa9_34_1_, unidade1_.DS_NOME as ds_nome10_34_1_, unidade1_.DS_SIGLA as ds_sigl11_34_1_, unidade1_.FK_UNIDADE as fk_unid14_34_1_, unidade1_.ST_UNIDADE_TIPO as st_unid12_34_1_, unidade1_.VR_VALOR as vr_valo13_34_1_ from TAB_UNIDADE unidade0_ left outer join TAB_UNIDADE unidade1_ on unidade0_.FK_UNIDADE=unidade1_.PK_UNIDADE where unidade0_.PK_UNIDADE=? Hibernate: select grupo0_.PK_GRUPO as pk_grupo1_16_0_, grupo0_.TS_CADASTRO as ts_cadas2_16_0_, grupo0_.TS_MOVIMENTACAO as ts_movim3_16_0_, grupo0_.ST_SITUACAO as st_situa4_16_0_, grupo0_.IP_MOVIMENTACAO as ip_movim5_16_0_, grupo0_.CD_LOGIN_MOVIMENTACAO as cd_login6_16_0_, grupo0_.ST_REGISTRO as st_regis7_16_0_, grupo0_.TP_OPERACAO as tp_opera8_16_0_, grupo0_.NR_VERSAO as nr_versa9_16_0_, grupo0_.FK_CATEGORIA as fk_cate12_16_0_, grupo0_.ST_GRUPO_TIPO as st_grup10_16_0_, grupo0_.DS_NOME as ds_nome11_16_0_, categoria1_.PK_CATEGORIA as pk_categ1_1_1_, categoria1_.TS_CADASTRO as ts_cadas2_1_1_, categoria1_.TS_MOVIMENTACAO as ts_movim3_1_1_, categoria1_.ST_SITUACAO as st_situa4_1_1_, categoria1_.IP_MOVIMENTACAO as ip_movim5_1_1_, categoria1_.CD_LOGIN_MOVIMENTACAO as cd_login6_1_1_, categoria1_.ST_REGISTRO as st_regis7_1_1_, categoria1_.TP_OPERACAO as tp_opera8_1_1_, categoria1_.NR_VERSAO as nr_versa9_1_1_, categoria1_.DS_NOME as ds_nome10_1_1_, categoria1_.FK_SETOR as fk_seto12_1_1_, categoria1_.ST_CATEGORIA_TIPO as st_cate11_1_1_, setor2_.PK_SETOR as pk_setor1_33_2_, setor2_.TS_CADASTRO as ts_cadas2_33_2_, setor2_.TS_MOVIMENTACAO as ts_movim3_33_2_, setor2_.ST_SITUACAO as st_situa4_33_2_, setor2_.IP_MOVIMENTACAO as ip_movim5_33_2_, setor2_.CD_LOGIN_MOVIMENTACAO as cd_login6_33_2_, setor2_.ST_REGISTRO as st_regis7_33_2_, setor2_.TP_OPERACAO as tp_opera8_33_2_, setor2_.NR_VERSAO as nr_versa9_33_2_, setor2_.DS_NOME as ds_nome10_33_2_, setor2_.ST_SETOR_TIPO as st_seto11_33_2_ from TAB_GRUPO grupo0_ left outer join TAB_CATEGORIA categoria1_ on grupo0_.FK_CATEGORIA=categoria1_.PK_CATEGORIA left outer join TAB_SETOR setor2_ on categoria1_.FK_SETOR=setor2_.PK_SETOR where grupo0_.PK_GRUPO=? Hibernate: select grupo0_.PK_GRUPO as pk_grupo1_16_0_, grupo0_.TS_CADASTRO as ts_cadas2_16_0_, grupo0_.TS_MOVIMENTACAO as ts_movim3_16_0_, grupo0_.ST_SITUACAO as st_situa4_16_0_, grupo0_.IP_MOVIMENTACAO as ip_movim5_16_0_, grupo0_.CD_LOGIN_MOVIMENTACAO as cd_login6_16_0_, grupo0_.ST_REGISTRO as st_regis7_16_0_, grupo0_.TP_OPERACAO as tp_opera8_16_0_, grupo0_.NR_VERSAO as nr_versa9_16_0_, grupo0_.FK_CATEGORIA as fk_cate12_16_0_, grupo0_.ST_GRUPO_TIPO as st_grup10_16_0_, grupo0_.DS_NOME as ds_nome11_16_0_, categoria1_.PK_CATEGORIA as pk_categ1_1_1_, categoria1_.TS_CADASTRO as ts_cadas2_1_1_, categoria1_.TS_MOVIMENTACAO as ts_movim3_1_1_, categoria1_.ST_SITUACAO as st_situa4_1_1_, categoria1_.IP_MOVIMENTACAO as ip_movim5_1_1_, categoria1_.CD_LOGIN_MOVIMENTACAO as cd_login6_1_1_, categoria1_.ST_REGISTRO as st_regis7_1_1_, categoria1_.TP_OPERACAO as tp_opera8_1_1_, categoria1_.NR_VERSAO as nr_versa9_1_1_, categoria1_.DS_NOME as ds_nome10_1_1_, categoria1_.FK_SETOR as fk_seto12_1_1_, categoria1_.ST_CATEGORIA_TIPO as st_cate11_1_1_, setor2_.PK_SETOR as pk_setor1_33_2_, setor2_.TS_CADASTRO as ts_cadas2_33_2_, setor2_.TS_MOVIMENTACAO as ts_movim3_33_2_, setor2_.ST_SITUACAO as st_situa4_33_2_, setor2_.IP_MOVIMENTACAO as ip_movim5_33_2_, setor2_.CD_LOGIN_MOVIMENTACAO as cd_login6_33_2_, setor2_.ST_REGISTRO as st_regis7_33_2_, setor2_.TP_OPERACAO as tp_opera8_33_2_, setor2_.NR_VERSAO as nr_versa9_33_2_, setor2_.DS_NOME as ds_nome10_33_2_, setor2_.ST_SETOR_TIPO as st_seto11_33_2_ from TAB_GRUPO grupo0_ left outer join TAB_CATEGORIA categoria1_ on grupo0_.FK_CATEGORIA=categoria1_.PK_CATEGORIA left outer join TAB_SETOR setor2_ on categoria1_.FK_SETOR=setor2_.PK_SETOR where grupo0_.PK_GRUPO=?
O erro é este
Após clicar para ordenar unidade ou grupo
2021-02-26 16:15:40.307 INFO 40344 --- [nio-8100-exec-6] b.c.g.p.service.PrincipalService : Metodo que ajusta a a ordenacao e paginacao por campos da consulta Hibernate: select distinct insumo1_.PK_INSUMO as pk_insum1_17_, insumo1_.TS_CADASTRO as ts_cadas2_17_, insumo1_.TS_MOVIMENTACAO as ts_movim3_17_, insumo1_.ST_SITUACAO as st_situa4_17_, insumo1_.IP_MOVIMENTACAO as ip_movim5_17_, insumo1_.CD_LOGIN_MOVIMENTACAO as cd_login6_17_, insumo1_.ST_REGISTRO as st_regis7_17_, insumo1_.TP_OPERACAO as tp_opera8_17_, insumo1_.NR_VERSAO as nr_versa9_17_, insumo1_.CD_CODIGO_EAN as cd_codi10_17_, insumo1_.CD_CODIGO_EXPORTACAO as cd_codi11_17_, insumo1_.DS_DESCRICAO as ds_desc12_17_, insumo1_.ST_FASE as st_fase13_17_, insumo1_.FK_GRUPO as fk_grup16_17_, insumo1_.DS_NOME as ds_nome14_17_, insumo1_.ST_PESAVEL as st_pesa15_17_, insumo1_.FK_UNIDADE as fk_unid17_17_ from TAB_INSUMO_LOJA insumoloja0_ left outer join TAB_INSUMO insumo1_ on insumoloja0_.FK_INSUMO=insumo1_.PK_INSUMO left outer join TAB_UNIDADE unidade2_ on insumo1_.FK_UNIDADE=unidade2_.PK_UNIDADE left outer join TAB_GRUPO grupo3_ on insumo1_.FK_GRUPO=grupo3_.PK_GRUPO where upper(insumo1_.DS_NOME) like ? or ? is null order by grupo3_.DS_NOME asc offset 0 rows fetch next ? rows only 2021-02-26 16:15:40.311 WARN 40344 --- [nio-8100-exec-6] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 145, SQLState: S0001 2021-02-26 16:15:40.311 ERROR 40344 --- [nio-8100-exec-6] o.h.engine.jdbc.spi.SqlExceptionHelper : Itens ORDER BY devem aparecer na lista de seleção se SELECT DISTINCT for especificado. 2021-02-26 16:15:40.312 ERROR 40344 --- [nio-8100-exec-6] b.c.g.p.resource.MensagensRetorno : could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet org.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:281) ~[spring-orm-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:255) ~[spring-orm-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:528) ~[spring-orm-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61) ~[spring-tx-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:242) ~[spring-tx-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:154) ~[spring-tx-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:149) ~[spring-data-jpa-2.3.5.RELEASE.jar:2.3.5.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95) ~[spring-aop-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186) ~[spring-aop-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212) ~[spring-aop-5.2.10.RELEASE.jar:5.2.10.RELEASE] at com.sun.proxy.$Proxy165.pesquisarRetornandoInsumo(Unknown Source) ~[na:na] at br.com.ghnetsoft.comprasfood.crud.service.insumo.InsumoService.pesquisar(InsumoService.java:136) ~[classes/:na] at br.com.ghnetsoft.comprasfood.crud.service.insumo.InsumoService$$FastClassBySpringCGLIB$$a7b5ca22.invoke(<generated>) ~[classes/:na] at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218) ~[spring-core-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.aop.framework.CglibAopProxy$DynamicAdvisedInterceptor.intercept(CglibAopProxy.java:687) ~[spring-aop-5.2.10.RELEASE.jar:5.2.10.RELEASE] at br.com.ghnetsoft.comprasfood.crud.service.insumo.InsumoService$$EnhancerBySpringCGLIB$$241bd1d.pesquisar(<generated>) ~[classes/:na] at br.com.ghnetsoft.comprasfood.crud.resource.insumo.InsumoResource.pesquisar(InsumoResource.java:104) ~[classes/:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na] at java.base/java.lang.reflect.Method.invoke(Method.java:566) ~[na:na] at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:190) ~[spring-web-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:138) ~[spring-web-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:105) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:878) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:792) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:87) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:1040) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:943) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:1006) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:898) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:626) ~[tomcat-embed-core-9.0.39.jar:4.0.FR] at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:883) ~[spring-webmvc-5.2.10.RELEASE.jar:5.2.10.RELEASE] at javax.servlet.http.HttpServlet.service(HttpServlet.java:733) ~[tomcat-embed-core-9.0.39.jar:4.0.FR] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231) ~[tomcat-embed-core-9.0.39.jar:9.0.39] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar:9.0.39] at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53) ~[tomcat-embed-websocket-9.0.39.jar:9.0.39] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar:9.0.39] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar:9.0.39] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:320) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:126) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:90) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:118) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:137) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:111) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:158) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:63) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.oauth2.provider.authentication.OAuth2AuthenticationProcessingFilter.doFilter(OAuth2AuthenticationProcessingFilter.java:176) ~[spring-security-oauth2-2.2.1.RELEASE.jar:na] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:116) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:92) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:77) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:105) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:56) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:334) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:215) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:178) ~[spring-security-web-5.3.5.RELEASE.jar:5.3.5.RELEASE] at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:358) ~[spring-web-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:271) ~[spring-web-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193) ~[tomcat-embed-core-9.0.39.jar:9.0.39] at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166) ~[tomcat-embed-core-9.0.39.jar:9.0.39] at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) ~[spring-web-5.2.10.RELEASE.jar:5.2.10.RELEASE] at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:119) ~[spring-web-5.2.10.RELEASE.jar:5.2.10.RELEASE]

