Creazione di fagioli applicationContext in configurazione primavera basato su Java

voti
1

Sto cercando di costruire da un'applicazione basata primavera zero utilizzando configurazioni di Java, ma mi sto avvertimento che ho completamente non capisco ... Qualcuno può dirmi che cosa è sbagliato lì?

Errore: ATTENZIONE: eccezione incontrata durante inizializzazione del contesto - l'annullamento di aggiornamento tentativo org.springframework.beans.factory.BeanCreationException: Errore durante la creazione di fagioli con nome 'applicationContext': la creazione di istanze di Bean non è riuscito; l'eccezione annidata è org.springframework.beans.BeanInstantiationException: Impossibile creare un'istanza [org.springframework.context.ApplicationContext]: classe specificata è un'interfaccia

Applicazione initializer:

public class SpringWebAppInitializer  implements WebApplicationInitializer {

@Override
public void onStartup(ServletContext servletContext) throws ServletException {

    AnnotationConfigWebApplicationContext appContext = new AnnotationConfigWebApplicationContext();
    appContext.register(ApplicationContext.class);

    ServletRegistration.Dynamic dispatcher = servletContext.addServlet(SpringDispatcher, new DispatcherServlet(appContext));
    dispatcher.setLoadOnStartup(1);
    dispatcher.addMapping(/);

    servletContext.addListener(new ContextLoaderListener(appContext));
}
}

Configurazione contesto di applicazione:

@Configuration
@ComponentScan(pl.wybornie.entity.*)
@EnableTransactionManagement
public class ApplicationContextConfig {

@Bean(name = viewResolver)
public InternalResourceViewResolver getViewResolver() {

    InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
    viewResolver.setPrefix(/WEB-INF/pages/);
    viewResolver.setSuffix(.jsp);
    return viewResolver;
}

@Bean(name = dataSource)
public DataSource getDataSource() {
    BasicDataSource dataSource = new BasicDataSource();
    dataSource.setDriverClassName(com.mysql.jdbc.Driver);
    dataSource.setUrl(jdbc:mysql://localhost:3306/wyborniedb);
    dataSource.setUsername(root);
    dataSource.setPassword(root123);

    return dataSource;
}

@Autowired
@Bean(name = sessionFactory)
public SessionFactory getSessionFactory(DataSource dataSource) {

    LocalSessionFactoryBuilder sessionBuilder = new LocalSessionFactoryBuilder(dataSource);

    //sessionBuilder.addAnnotatedClasses(User.class);
    sessionBuilder.scanPackages(pl.wybornie.entity, pl.wybornie.entity.cookBook);

    return sessionBuilder.buildSessionFactory();
}

@Autowired
@Bean(name = transactionManager)
public HibernateTransactionManager getTransactionManager(SessionFactory sessionFactory) {

    HibernateTransactionManager transactionManager = new   HibernateTransactionManager(sessionFactory);
    return transactionManager;
}
  }

Questi sono solo 2 classi di configurazione per tutto il progetto.

Il codice intero è disponibile all'indirizzo: https://github.com/annweg/wybornie.pl/tree/new_build/project_workspace/wybornie

Sono newbie abbastanza con molla e forse c'è qualche configurazione mancante lì ... Sto usando Primavera 4.1.6, Tomcat 7 e Java 7.

edit: ho cercato di registrare sia ApplicationContext dalla primavera e la mia classe di configurazione - ApplicationContextConfig - l'errore è lo stesso. Ho cancellato server Tomcat e ha creato uno nuovo, riaperto Eclipse e ancora lo stesso. Sia l'importazione di progetto come nuova (l'eliminazione di tutte le impostazioni e file di .project) non ha aiutato, quindi forse l'errore è da qualche parte in configurazione ...?

È pubblicato 03/04/2015 alle 20:58
dall'utente
In altre lingue...                            


2 risposte

voti
0

Il problema era con le mie impostazioni Eclipse. Ho eliminare tutto il contenuto del progetto, il cambiamento di lavoro e solo copia / incolla tutte le classi e librerie e l'errore è andato.

Risposto il 04/04/2015 a 11:02
fonte dall'utente

voti
0

Bene, questo tipo di errore è spesso legato alla vasi mancanti e / o errore di percorso di classe. Controllare se si dispone di alcune librerie non aggiunto al classpath, o il progetto sta richiedendo alcune librerie che sono già presenti, ma poi rimosso. A volte aggiungo vasi al classpath e rimuoverli e funziona.

Risposto il 18/08/2015 a 20:23
fonte dall'utente

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more