Problemi con springframework nella creazione di un'applicazione web

di il
3 risposte

Problemi con springframework nella creazione di un'applicazione web

Salve,

mi sto muovendo con un primo sito web e sto usando intellij Ultimate come IDE, sto inoltre usufruendo di springwork e ad esecuzione del progetto mi trovo con il seguente messaggio di errore:

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'autoreServiceImpl': Unsatisfied dependency expressed through field 'autoreDao': Error creating bean with name 'autoreDao' defined in com.progetto.progettosito.dao.AutoreDao defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Not a managed type: class com.progetto.progettosito.model.Autore

Dove Autore è una delle mie classi avente quindi un Dao per collegarlo a un DB, non so tuttavia come risolvere questo problema e quando cerco di usare Tomcat per mettere il progetto online ottengo un errore 404. Non so bene come muovermi.

3 Risposte

  • Re: Problemi con springframework nella creazione di un'applicazione web

    L'eccezione dice “Not a managed type”.

    Significa che quella classe (com.progetto.progettosito.model.Autore) non fa parte delle classi che Spring carica automaticamente (e, quindi, che gestisce).

    Non hai postato del codice, quindi non si riesce a capire bene come hai impostato il component scan e i repository di JPA.

    Di solito, da qualche parte (la classe principale solitamnte) ci sono le seguenti due annotations:

    @EnableJpaRepositories - che specifica qual è il package base che contiene le classi (e/o le interfaccie) ad uso della JPA, ovvero quelle dei Repository

    @ComponentScan - che specifica a Spring il package base da cui effettuare lo scan per ottenere i component da gestire.

    Tu hai specificato queste annotation? Se sì, in che modo? Verifica.

  • Re: Problemi con springframework nella creazione di un'applicazione web

    package com.progetto.progettosito;
    
    
    
    import org.springframework.boot.SpringApplication;
    
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    import org.springframework.context.annotation.ComponentScan;
    
    import org.springframework.data.jpa.repository.config.EnableJpaRepositories;
    
    
    
    @EnableJpaRepositories
    
    @SpringBootApplication
    
    @ComponentScan(basePackages = {"com.progetto.progettosito.dao", "com.progetto.progettosito.service"})
    
    public class ProgettoSitoApplication {
    
    
    
        public static void main(String[] args) {
    
            SpringApplication.run(ProgettoSitoApplication.class, args);
    
        }
    
    
    
    }
    

    Questa è la classe main in cui ho scritto le annotazioni, per quanto riguarda ComponentScan mi sono fatto aiutare da un'AI in quanto non l'avevo mai usato

  • Re: Problemi con springframework nella creazione di un'applicazione web

    A quanto pare è un'applicazione Spring Boot (non l'avevi specificato).

    In questo caso, le seguenti annotation non servono (sono già attive di default):

    @EnableJpaRepositories

    @ComponentScan

    A questo punto il problema si sposta altrove:

    1. Posta il codice della classe com.progetto.progettosito.model.Autore
    2. Posta il POM del progetto (se si tratta di progetto Maven) o mostra le librerie che hai incluso
    3. Dicci quale versione di Java stai usando

    -

    PS: E' inutile affidarsi alla IA se non si ha prima studiato e non si hanno le basi di ciò che si sta facendo.

Devi accedere o registrarti per scrivere nel forum
3 risposte