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 ...?