Spring + Hibernate: LocalSessionFactoryBean - NoSuchMethodError: org.hibernate.cfg.Anmerkungen.Reflexion.XMLContext

Ich versuche zu integrieren Hibernate 4.0.0.FINAL mit Spring 3.1.0.RELEASE
mit @Configuration.

Danach tritt dieses problem auf:

BeanCreationException: Error creating bean with name 'alertsSessionFactoryBean'
NoSuchMethodError: org.hibernate.cfg.annotations.reflection.XMLContext$Default.getDelimitedIdentifier()Ljava/lang/Boolean;

Dies ist mein PersistenceHibernateConfig Datei

@Configuration
@EnableTransactionManagement
public class PersistenceHibernateConfig {

    @Value("${jdbc.driverClassName}")
    private String driverClassName;

    @Value("${jdbc.url}")
    private String url;

    @Value("${hibernate.dialect}")
    String hibernateDialect;

    @Value("${hibernate.show_sql}")
    boolean hibernateShowSql;

    @Value("${hibernate.hbm2ddl.auto}")
    String hibernateHbm2ddlAuto;

    @Bean
    public LocalSessionFactoryBean alertsSessionFactoryBean() {
        final LocalSessionFactoryBean sessionFactory = new LocalSessionFactoryBean();
        sessionFactory.setDataSource(this.restDataSource());
        sessionFactory.setPackagesToScan(new String[]{"com.cloudlb"});
        sessionFactory.setHibernateProperties(this.hibernateProperties());

        return sessionFactory;
    }

    @Bean
    public DataSource restDataSource() {
        final DriverManagerDataSource dataSource = new DriverManagerDataSource();
        dataSource.setDriverClassName(this.driverClassName);
        dataSource.setUrl(this.url);
        dataSource.setUsername("test");
        dataSource.setPassword("1234");

        return dataSource;
    }

    @Bean
    public HibernateTransactionManager transactionManager() {
        final HibernateTransactionManager txManager = new HibernateTransactionManager();
        txManager.setSessionFactory(this.alertsSessionFactoryBean().getObject());

        return txManager;
    }

    @Bean
    public PersistenceExceptionTranslationPostProcessor exceptionTranslationPostProcessor() {
        return new PersistenceExceptionTranslationPostProcessor();
    }

    @Bean
    public PersistenceExceptionTranslator exceptionTranslator() {
        return new HibernateExceptionTranslator();
    }

    final Properties hibernateProperties() {
        return new Properties() {
            {
                this.put("persistence.dialect", PersistenceHibernateConfig.this.hibernateDialect);
                this.put("hibernate.hbm2ddl.auto", PersistenceHibernateConfig.this.hibernateHbm2ddlAuto);
                this.put("hibernate.show_sql", PersistenceHibernateConfig.this.hibernateShowSql);
            }
        };
    }
}

Ich denke, es könnte ein problem mit LocalSessionFactoryBean aber ich kann nicht verstehen, was falsch ist. Ich kann etwas vermissen.

Fand ich heraus, dass es ist, weil der fehlt hibernate-annotation.jar wenn es 3 sind.x
Weiß nicht, warum in 4.0 die Anmerkung: org.hibernate.cfg.Anmerkungen.Reflexion.XMLContext ist in hibernate-core-jar-Datei und es immer noch Fehler.

Danke im Voraus

Haben Sie versucht, diese mit einer niedrigeren version von hibernate?
Gehen. Wenn Sie es beheben können in Hibernate 4. Es wird großartig sein.
Ändern der Hibernate 3.6.9. Habe einen anderen Fehler: IncompatibleClassChangeError: Klasse org.hibernate.cfg.ExtendedMappings hat interface org.hibernate.cfg.Zuordnungen als super-Klasse
Wie schaffst du es, Abhängigkeiten?

InformationsquelleAutor xyzxyz442 | 2011-12-26

Schreibe einen Kommentar