You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I opened this issue also on spring boot, but I'm not sure whether it belongs here or there:
I'm developing a spring boot application and I'm using GORM through org.grails:gorm-hibernate4-spring-boot:1.1.0.RELEASE for the data access.
I get the following exception when I try to map an entity to a view:
15:33:48.909 [main] WARN o.h.e.jdbc.spi.SqlExceptionHelper - SQL Error: 17674, SQLState: null
15:33:48.911 [main] ERROR o.h.e.jdbc.spi.SqlExceptionHelper - No such object or user exists in the database.
15:33:48.915 [main] ERROR o.h.tool.hbm2ddl.SchemaUpdate - HHH000299: Could not complete schema update
java.lang.NullPointerException: null
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:126) ~[hibernate-core-4.3.10.Final.jar:4.3.10.Final]
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:112) ~[hibernate-core-4.3.10.Final.jar:4.3.10.Final]
at org.hibernate.tool.hbm2ddl.DatabaseMetadata.getTableMetadata(DatabaseMetadata.java:158) ~[hibernate-core-4.3.10.Final.jar:4.3.10.Final]
at org.hibernate.cfg.Configuration.generateSchemaUpdateScriptList(Configuration.java:1204) ~[hibernate-core-4.3.10.Final.jar:4.3.10.Final]
at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:237) ~[hibernate-core-4.3.10.Final.jar:4.3.10.Final]
at org.hibernate.tool.hbm2ddl.SchemaUpdate.execute(SchemaUpdate.java:203) ~[hibernate-core-4.3.10.Final.jar:4.3.10.Final]
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:522) ~[hibernate-core-4.3.10.Final.jar:4.3.10.Final]
at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1859) ~[hibernate-core-4.3.10.Final.jar:4.3.10.Final]
at org.codehaus.groovy.grails.orm.hibernate.cfg.GrailsAnnotationConfiguration.buildSessionFactory(GrailsAnnotationConfiguration.java:372) ~[grails-datastore-gorm-hibernate4-3.1.1.RELEASE.jar:na]
at org.codehaus.groovy.grails.orm.hibernate.ConfigurableLocalSessionFactoryBean.doBuildSessionFactory(ConfigurableLocalSessionFactoryBean.java:479) [grails-datastore-gorm-hibernate4-3.1.1.RELEASE.jar:na]
at org.codehaus.groovy.grails.orm.hibernate.ConfigurableLocalSessionFactoryBean.buildSessionFactory(ConfigurableLocalSessionFactoryBean.java:473) [grails-datastore-gorm-hibernate4-3.1.1.RELEASE.jar:na]
at org.codehaus.groovy.grails.orm.hibernate.ConfigurableLocalSessionFactoryBean.afterPropertiesSet(ConfigurableLocalSessionFactoryBean.java:387) [grails-datastore-gorm-hibernate4-3.1.1.RELEASE.jar:na]
at org.springframework.beans.factoort.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1633) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:539) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:351) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:108) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1477) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1222) [sprin-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:537) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:476) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:303) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:299) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:194) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:755) [spring-beans-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:757) [spring-context-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:480) [spring-context-4.1.7.RELEASE.jar:4.1.7.RELEASE]
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:686) [spring-boot-1.2.5.RELEASE.jar:1.2.5.RELEASE]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:320) [spring-boot-1.2.5.RELEASE.jar:1.2.5.RELEASE]
at org.springframework.boot.SpringApplication$run$0.call(Unknown Source) [spring-boot-1.2.5.RELEASE.jar:1.2.5.RELEASE]
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) [groovy-all-ar:2.4.4]
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) [groovy-all-2.4.4.jar:2.4.4]
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125) [groovy-all-2.4.4.jar:2.4.4]
It turns out hibernate is trying to get the table metadata, even if it shouldn't, and that fails.
I disabled the db update by setting spring.jpa.properties.hibernate.hbm2ddl.auto to validate, but it turns out that org.hibernate.cfg.SettingsFactory.buildSettings is called twice: the first time with the full environment, including my setting, the second time from GrailsAnnotationConguration.buildSessionFactory, but in this case two properties are missing, and that value is set to update (maybe a default).
Am I doing something wrong or is this a bug?
My application still works, it is able to access the view, but there's a nasty exception at start up.
The text was updated successfully, but these errors were encountered:
I figured out the problem: the parameter has to be defined as
spring.hibernate.hbm2ddl.auto=validate
Now, the problem is in HibernateDatastoreSpringInitializer.groovy:102, because it does not accept the empty value, which is accepted by the gorm, and there is no way to pass that value.
Hi Graeme, I noticed you closed this ticket, but I don't see any difference in the way the empty value is handled for 'hibernate.hbm2ddl.auto': am I missing something?
I opened this issue also on spring boot, but I'm not sure whether it belongs here or there:
I'm developing a spring boot application and I'm using GORM through org.grails:gorm-hibernate4-spring-boot:1.1.0.RELEASE for the data access.
I get the following exception when I try to map an entity to a view:
It turns out hibernate is trying to get the table metadata, even if it shouldn't, and that fails.
I disabled the db update by setting spring.jpa.properties.hibernate.hbm2ddl.auto to validate, but it turns out that org.hibernate.cfg.SettingsFactory.buildSettings is called twice: the first time with the full environment, including my setting, the second time from GrailsAnnotationConguration.buildSessionFactory, but in this case two properties are missing, and that value is set to update (maybe a default).
Am I doing something wrong or is this a bug?
My application still works, it is able to access the view, but there's a nasty exception at start up.
The text was updated successfully, but these errors were encountered: