Hola todos tengo este error StackOverflowError, hay una recursión infinita o muy profunda en tu código. En tu caso, parece que el problema podría estar en la forma en que se manejan las peticiones en el filtro de seguridad SecurityFilter. esto de acuerdo a una consulta que le hice a chatGpt, pero el error sigue cambios en mi SecurityFilter
@Component
public class SecurityFilter extends OncePerRequestFilter {
@Autowired
private TokenService tokenService;
@Autowired
private UsuarioRepository usuarioRepository;
@Override
protected void doFilterInternal(
HttpServletRequest request,
HttpServletResponse response,
FilterChain filterChain
) throws ServletException, IOException {
var authHeader = request.getHeader("Authorization");
if(authHeader != null && authHeader.startsWith("Bearer ")){
var token = authHeader.replace("Bearer ", "").trim();
var subject = tokenService.getSubject(token);
if(subject != null){
var usuario = usuarioRepository.findByCorreoElectronico(subject);
if(usuario != null){
var authentication = new UsernamePasswordAuthenticationToken(usuario, null, usuario.getAuthorities());
SecurityContextHolder.getContext().setAuthentication(authentication);
}
}
}
filterChain.doFilter(request, response);
}
}
pero igual sigue el erro
java.lang.StackOverflowError: null
at org.springframework.aop.support.AopUtils.isEqualsMethod(AopUtils.java:162) ~[spring-aop-6.1.10.jar:6.1.10]
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:175) ~[spring-aop-6.1.10.jar:6.1.10]
at jdk.proxy4/jdk.proxy4.$Proxy146.authenticate(Unknown Source) ~[na:na]