Tirant les cheveux sur celui-ci, ne fait absolument aucun sens tentative de démarrage de mon application de démarrage à ressort avec ces deux contrôleurs lance l'erreur suivante p> Le nom de la classe, le nom de la méthode, la cartographie des demandes et les paramètres sont tous uniques, je ne comprends tout simplement pas. p> Comme vous pouvez le dire «Je suis descendu dans une frustration pure, essayant toutes sortes de changements de chaîne pour simplement le faire travailler au départ, mais si quelqu'un pouvait m'aider à identifier le problème, je serais extrêmement reconnaissant. P> Edit: Utilisation de Spring-Boot 2.2 .4 p> p>
3 Réponses :
ok .. j'ai réussi à la compiler .. Je pense que j'ai été mal compris que vous pouvez utiliser le si vous fournissez p> @rescontroller code> annotation @RestController("/firmware")
Comme vous l'avez mentionné dans votre propre réponse: Oui, vous avez mal compris. Ceci est facile à confondre.
Il est très similaire à @RestController code> S est le nom du composant, pas le chemin de mappage de la requête. Jetez un oeil à la source de org.springframework.web.bind.annotation.rescontroller # valeur code>. P> Org.springframework.stereotype # Valeur Code> et les autres dans org.springframework.stereotype code> (dans printemps-contexte code>). Vous avez les annotations correctes maintenant: p>
Le framework se plaint qu'il existe un piste post-chemin Pouvez-vous s'il vous plaît Essayez le code suivant: p> / code> à partir des 2 contrôleurs où le mappage n'est spécifié pour aucun d'eux, il ne peut donc pas distinguer le chemin exact. @RequestMappage code> au niveau du contrôleur doit définir le chemin racine de toutes les API de ce chemin indiquer par exemple que je dois Créer un contrôleur lié à Feeds API que je ferais: P> @RestController
@RequestMapping("/api/feeds")
class FeedsController {
//Constructor inject fields here
@Autowired
FeedsController() {
}
@GetMapping("/")
ResponseEntity<Map<String, String>> get() {
return ResponseEntity.ok(Collections.emptyMap());
}
@PostMapping("/")
ResponseEntity<Map<String, String>> post() {
return ResponseEntity.ok(Collections.emptyMap());
}
/**
* Standard way to implement delete is to soft delete
* @return
*/
@DeleteMapping("/")
ResponseEntity<Map<String, String>> delete() {
return ResponseEntity.ok(Collections.emptyMap());
}
}