1
resposta

[Bug] Começou do nada

Tentei até com os projetos que fiz dowload na plataforma, mas da este erro do nada

[2m2023-09-26T17:27:46.819-03:00     [0;39m    [31mERROR      [restartedMain][0;39m [36mo.s.b.web.embedded.tomcat.TomcatStarter [0;39m [2m:[0;39m Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'securityFilter': Unsatisfied dependency expressed through field 'tokenService': Error creating bean with name 'tokenService': Injection of autowired dependencies failed
[2m2023-09-26T17:27:46.891-03:00[0;39m [32m INFO[0;39m [35m11028[0;39m [2m---[0;39m [2m[  restartedMain][0;39m [36mo.apache.catalina.core.StandardService  [0;39m [2m:[0;39m Stopping service [Tomcat]
[2m2023-09-26T17:27:46.920-03:00[0;39m [33m WARN[0;39m [35m11028[0;39m [2m---[0;39m [2m[  restartedMain][0;39m [36mConfigServletWebServerApplicationContext[0;39m [2m:[0;39m Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server
[2m2023-09-26T17:27:46.947-03:00[0;39m [32m INFO[0;39m [35m11028[0;39m [2m---[0;39m [2m[  restartedMain][0;39m [36m.s.b.a.l.ConditionEvaluationReportLogger[0;39m [2m:[0;39m 

Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled.
[2m2023-09-26T17:27:46.995-03:00[0;39m [31mERROR[0;39m [35m11028[0;39m [2m---[0;39m [2m[  restartedMain][0;39m [36mo.s.boot.SpringApplication              [0;39m [2m:[0;39m Application run failed

org.springframework.context.ApplicationContextException: Unable to start web server
1 resposta

Olá Guilherme! Tudo ok contigo?

Pelo que entendi, você está tendo problemas com a inicialização do Tomcat e parece que o problema está relacionado com a injeção de dependências no Spring.

O erro UnsatisfiedDependencyException que você está vendo geralmente ocorre quando o Spring não consegue resolver uma dependência. No seu caso, parece que o Spring não consegue criar o bean 'securityFilter' porque tem problemas para criar o bean 'tokenService'.

A causa mais comum para esse problema é que o Spring não consegue encontrar um bean que corresponda ao tipo necessário. Isso pode acontecer se o bean necessário não estiver definido ou se houver mais de um bean do mesmo tipo e o Spring não souber qual escolher.

Uma possível solução seria verificar se o bean 'tokenService' está sendo corretamente definido em seu código. Ele deve estar anotado com @Service ou @Component, ou então ser definido em uma classe de configuração anotada com @Configuration.

Além disso, se houver mais de um bean do tipo 'tokenService', você pode usar a anotação @Qualifier para especificar qual bean deve ser injetado.

Por exemplo:

@Autowired
public MyClass(@Qualifier("tokenService") TokenService tokenService) {
    this.tokenService = tokenService;
}

Por último, se o 'tokenService' estiver em um pacote diferente do que o Spring está escaneando, você pode precisar adicionar esse pacote ao componente de varredura do Spring.

Por exemplo, se o seu 'tokenService' está no pacote 'com.example.tokens', você pode fazer o seguinte:

@ComponentScan({"com.example.tokens", "com.example.otherpackage"})
public class AppConfig {
}

Era isso. Espero ter ajudado!

Abraços e bons estudos!