Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [JAVA] Spring Boot e path non trovati

    ciao!

    ho creato un progetto spring boot su spring initializr.
    ho aggiunto la connessione al db, creato il model ed il controller:
    codice:
    package com.mp.controller;
    
    import com.mp.model.Utente;
    import com.mp.model.UtentiRepository;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.*;
    
    import java.util.List;
    
    @RestController
    @RequestMapping(path = "/utenti")
    public class UtentiController {
    
        @Autowired
        private UtentiRepository utentiRepository;
    
        @PostMapping(path = "/add")
        public @ResponseBody
        String add(@RequestParam String email, @RequestParam String password) {
    
            Utente u = new Utente();
            u.setEmail(email);
            u.setPassword(password);
            utentiRepository.save(u);
    
            return "OK";
        }
    
        @GetMapping(path = "/all")
        public @ResponseBody
        List<Utente> getAll() {
            return utentiRepository.findAll();
        }
    }
    questo il main:
    codice:
    package com.mp.springtest;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class SpringtestApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(SpringtestApplication.class, args);
        }
    
    }
    quando lo avvio non ottento errori, ma non riesco ad accedere alle rotte.
    in pratica:
    codice:
    $ curl localhost:8080/utenti/add -d email=a@a.it -d password=pwd
    {"timestamp":"2021-12-03T07:58:22.678+00:00","status":404,"error":"Not Found","path":"/utenti/add"}
    oppure se vado sulla get:
    codice:
    Whitelabel Error PageThis application has no explicit mapping for /error, so you are seeing this as a fallback.
    Fri Dec 03 08:57:05 CET 2021
    There was an unexpected error (type=Not Found, status=404).
    dove sto sbagliando??

  2. #2
    ok risolto.

    il problema era nei package.
    ho messo i due creati "dentro" a quello principale.


  3. #3
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,254
    Quote Originariamente inviata da fermat Visualizza il messaggio
    codice:
    package com.mp.controller;
    questo il main:
    codice:
    package com.mp.springtest;
    Giusto per informazione, in Spring Boot il component scanning (la scansione dei package per rintracciare le classi dei bean) per default parte dal package della classe "main" con @SpringBootApplication e va nei sotto-package.
    Ma in altri package proprio slegati, no (sempre per default).
    Quindi è per questo che non poteva trovare cose nel com.mp.controller.

    Per sfruttare questa logica di default, tipicamente si mette la classe @SpringBootApplication in un package base es.
    com.esempio.miaapp

    e poi si mette il resto in sotto-package es.
    com.esempio.miaapp.controller
    com.esempio.miaapp.service
    ecc...
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    Java Versions Cheat Sheet

  4. #4
    Quote Originariamente inviata da andbin Visualizza il messaggio
    Giusto per informazione, in Spring Boot il component scanning (la scansione dei package per rintracciare le classi dei bean) per default parte dal package della classe "main" con @SpringBootApplication e va nei sotto-package.
    Ma in altri package proprio slegati, no (sempre per default).
    Quindi è per questo che non poteva trovare cose nel com.mp.controller.

    Per sfruttare questa logica di default, tipicamente si mette la classe @SpringBootApplication in un package base es.
    com.esempio.miaapp

    e poi si mette il resto in sotto-package es.
    com.esempio.miaapp.controller
    com.esempio.miaapp.service
    ecc...
    eh si infatti ho fatto così alla fine.
    ma ho dovuto spulciare un pò qua e la per arrivarci!


Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.