Adloun

Spring Boot : écrire le serveur (école d'ingénieur) · Chapitre 1 · Application directe du cours

Le contrôleur introuvable

Premiers pas avec Spring Boot · niveau 2

Énoncé

Dans le projet code/ch1/erreurs/controleur-oublie, la classe principale est dans le paquet fr.librairie et un contrôleur PingController, qui répond pong sur /ping, dans le paquet fr.autre. L'application démarre sans erreur. Que répond GET /ping ? Pourquoi ? Proposer une correction.

Corrigé


$ curl -i localhost:8080/ping
HTTP/1.1 404 
Content-Type: application/json
Transfer-Encoding: chunked
Date: Fri, 02 Oct 2026 21:29:13 GMT

{"timestamp":"2026-10-02T21:29:13.055Z","status":404,"error":"Not Found","path":"/ping"}

Le contrôleur n'a jamais été créé : @SpringBootApplication ne parcourt que fr.librairie et ses sous-paquets, et fr.autre n'en fait pas partie. Spring ne connaît donc aucune méthode pour /ping et répond 404, sans le moindre avertissement au démarrage : c'est ce silence qui rend l'erreur déroutante. La correction est de déplacer PingController sous la classe principale, par exemple dans fr.librairie.ping. On pourrait aussi élargir le parcours (@SpringBootApplication(scanBasePackages = "fr")), mais il est plus simple de respecter la convention.

100 % gratuit

La suite du chapitre est sur Adloun

Exercice suivant et tuteur

Sans compte : le cours et le premier QCM. Exercices et tuteur : inscription gratuite en 30 secondes, sans carte bancaire.

Le cours du chapitre · Tous les exercices du chapitre

Exercice suivant et tuteur →