1
resposta

Não consigo rodar a API

Antes de abrir este tópico, encontrei pelo menos dois outros tópicos com o mesmo problema, ambos sem resposta.

Eu executo rodar a api com java -jar server.jar

abaixo apenas o final do log do spring boot:

2024-06-10 14:40:30.846  INFO 17616 --- [           main] o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat started on port(s): 8080 (http) with context path ''
2024-06-10 14:40:30.850  INFO 17616 --- [           main] b.c.a.technews.TechnewsApplicationKt     : Started TechnewsApplicationKt in 10.06 seconds (JVM running for 10.638)
2024-06-10 14:41:37.863  INFO 17616 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/]       : Initializing Spring DispatcherServlet 'dispatcherServlet'
2024-06-10 14:41:37.863  INFO 17616 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Initializing Servlet 'dispatcherServlet'
2024-06-10 14:41:37.882  INFO 17616 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet        : Completed initialization in 18 ms
C:\>java --version
openjdk 17.0.6 2023-01-17
OpenJDK Runtime Environment Temurin-17.0.6+10 (build 17.0.6+10)
OpenJDK 64-Bit Server VM Temurin-17.0.6+10 (build 17.0.6+10, mixed mode, sharing)
C:\>ipconfig

Configuração de IP do Windows


Adaptador Ethernet Ethernet 2:

   Estado da mídia. . . . . . . . . . . . . .  : mídia desconectada
   Sufixo DNS específico de conexão. . . . . . : dominio.dominio.com.br

Adaptador Ethernet Ethernet:

   Sufixo DNS específico de conexão. . . . . . : dominio.com.br
   Endereço IPv6 de link local . . . . . . . . : fe80::18f1:afb2:9aa5:3b72%4
   Endereço IPv4. . . . . . . .  . . . . . . . : 10.34.3.151
   Máscara de Sub-rede . . . . . . . . . . . . : 255.255.255.0
   Gateway Padrão. . . . . . . . . . . . . . . : 10.34.3.221

No Postman, quando dou um GET http://10.34.3.151:8080/ retorna:

{
    "timestamp": "2024-06-10T17:41:37.962+0000",
    "status": 404,
    "error": "Not Found",
    "message": "No message available",
    "path": "/"
}

No APP quando tento salvar uma noticia: "Não foi possível salvar notícia" conforme previsto em caso de falha na classe FormularioNoticiaActivity.kt

1 resposta

Oii, Cleyton, tudo bem por aí?

O erro 404 indica que o servidor está rodando, mas que ele não encontrou o recurso solicitado na URL especificada.

Vou deixar aqui duas recomendações pra te ajudar com esse problema. São elas:

  • Verificar os endpoints: por favor, veja se você tem um endpoint configurado para a URL que está tentando acessar. Por exemplo, se você espera que a http://10.34.3.151:8080/ retorne algo, é importante que exista um controlador mapeado para a raiz (no caso, o /).

Um exemplo de controlador simples seria:

@RestController
public class HomeController {
    @GetMapping("/")
    public String home() {
        return "Hello, World!";
    }
}
  • Verificar o Context Path: no log que você forneceu, o contexto está vazio (na parte do context path ''). Isso significa que o servidor deve responder diretamente na porta 8080. Se você configurou um contexto diferente, por exemplo, na /api, a URL correta seria http://10.34.3.151:8080/api.

Se outra dúvida surgir, estamos por aqui no fórum.

Abraços!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.