I am having an odd Error in my example application (see the stack trace below).
Boiling this down I was able to introduce the very same error in the Vaadin CRM example application (as described in the Vaadin Book “Building Modern Web Apps with Spring Boot and Vaadin.pdf”) so I thought I show it here using that as example.
The only thing I need to do to trigger the error is to add a boolean field to my entity (in the CRM example the Contact-entity), i.e. to the file Contact.java from the CRM application just add an additional field “private boolean check;” like so:
...
@Email
@NotNull
@NotEmpty
private String email = "";
// I am adding this field:
private boolean check;
}
That’s already enough to cause the below exception when restarting the application!
What is causing this? What am I missing?
Why does an additional boolean field cause all these odd SQL exceptions?
...
__ __ _ _ _____ _ _ _ ____ ____ __ __
\ \ / / __ _ __ _ __| |(_) _ __ |_ _| _ _ | |_ ___ _ __ (_) __ _ | | / ___|| _ \ | \/ |
\ \ / / / _` | / _` | / _` || || '_ \ | | | | | || __| / _ \ | '__|| | / _` || | | | | |_) || |\/| |
\ V / | (_| || (_| || (_| || || | | | | | | |_| || |_ | (_) || | | || (_| || | | |___ | _ < | | | |
\_/ \__,_| \__,_| \__,_||_||_| |_| |_| \__,_| \__| \___/ |_| |_| \__,_||_| \____||_| \_\|_| |_|
2021-01-13 23:29:56,886 INFO [restartedMain]
org.springframework.boot.StartupInfoLogger: Starting Application on Surfy with PID 99720 (U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm\target\classes started by mmo in U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm)
2021-01-13 23:29:56,889 INFO [restartedMain]
org.springframework.boot.SpringApplication: No active profile set, falling back to default profiles: default
2021-01-13 23:29:56,935 INFO [restartedMain]
org.springframework.boot.logging.DeferredLog: Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable
2021-01-13 23:29:56,935 INFO [restartedMain]
org.springframework.boot.logging.DeferredLog: For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'
2021-01-13 23:29:57,456 INFO [restartedMain]
org.springframework.data.repository.config.RepositoryConfigurationDelegate: Bootstrapping Spring Data JPA repositories in DEFERRED mode.
2021-01-13 23:29:57,524 INFO [restartedMain]
org.springframework.data.repository.config.RepositoryConfigurationDelegate: Finished Spring Data repository scanning in 60ms. Found 2 JPA repository interfaces.
2021-01-13 23:29:58,751 INFO [restartedMain]
org.springframework.boot.web.embedded.tomcat.TomcatWebServer: Tomcat initialized with port(s): 8080 (http)
2021-01-13 23:29:58,759 INFO [restartedMain]
org.apache.juli.logging.DirectJDKLog: Initializing ProtocolHandler ["http-nio-8080"]
2021-01-13 23:29:58,760 INFO [restartedMain]
org.apache.juli.logging.DirectJDKLog: Starting service [Tomcat]
2021-01-13 23:29:58,760 INFO [restartedMain]
org.apache.juli.logging.DirectJDKLog: Starting Servlet engine: [Apache Tomcat/9.0.37]
2021-01-13 23:29:58,883 INFO [restartedMain]
org.apache.juli.logging.DirectJDKLog: Initializing Spring embedded WebApplicationContext
2021-01-13 23:29:58,883 INFO [restartedMain]
org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext: Root WebApplicationContext: initialization completed in 1948 ms
2021-01-13 23:29:58,982 INFO [restartedMain]
com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Starting...
2021-01-13 23:29:59,081 INFO [restartedMain]
com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Start completed.
2021-01-13 23:29:59,090 INFO [restartedMain]
org.springframework.boot.autoconfigure.h2.H2ConsoleAutoConfiguration: H2 console available at '/h2-console'. Database available at 'jdbc:h2:mem:43e1687c-28f8-45d4-9cd0-862e2ef7d686'
2021-01-13 23:30:01,900 INFO [restartedMain]
com.vaadin.flow.spring.VaadinServletContextInitializer$DevModeServletContextListener: Search for subclasses and classes with annotations took 2 seconds
2021-01-13 23:30:01,904 INFO [restartedMain]
com.vaadin.flow.server.startup.DevModeInitializer: Starting dev-mode updaters in U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm folder.
2021-01-13 23:30:01,938 INFO [restartedMain]
com.vaadin.flow.server.frontend.scanner.FullDependenciesScanner: Visited 102 classes. Took 19 ms.
2021-01-13 23:30:01,957 INFO [restartedMain]
com.vaadin.flow.server.frontend.TaskRunNpmInstall: Skipping `npm install` because the frontend packages are already installed in the folder 'U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm\node_modules' and the hash in the file 'U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm\node_modules\.vaadin\vaadin.json' is the same as in 'package.json'
2021-01-13 23:30:01,958 INFO [restartedMain]
com.vaadin.flow.server.frontend.TaskCopyFrontendFiles: Copying frontend resources from jar files ...
2021-01-13 23:30:02,054 INFO [restartedMain]
com.vaadin.flow.server.frontend.TaskCopyFrontendFiles: Visited 13 resources. Took 96 ms.
2021-01-13 23:30:02,098 INFO [restartedMain]
com.vaadin.flow.server.frontend.AbstractUpdateImports: No js modules to update 'U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm\target\frontend\generated-flow-imports.js' file
2021-01-13 23:30:02,104 INFO [restartedMain]
com.vaadin.flow.server.frontend.scanner.FullDependenciesScanner: Visited 102 classes. Took 5 ms.
e[94mVaadin application has been deployed and started to the context path "/".
e[0m2021-01-13 23:30:02,122 INFO [ForkJoinPool.commonPool-worker-3]
com.vaadin.flow.server.frontend.TaskRunNpmInstall: Skipping `npm install` because the frontend packages are already installed in the folder 'U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm\node_modules' and the hash in the file 'U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm\node_modules\.vaadin\vaadin.json' is the same as in 'package.json'
2021-01-13 23:30:02,124 INFO [ForkJoinPool.commonPool-worker-3]
com.vaadin.flow.server.frontend.TaskCopyFrontendFiles: Copying frontend resources from jar files ...
2021-01-13 23:30:02,202 INFO [restartedMain]
org.springframework.scheduling.concurrent.ExecutorConfigurationSupport: Initializing ExecutorService 'applicationTaskExecutor'
2021-01-13 23:30:02,214 INFO [ForkJoinPool.commonPool-worker-3]
com.vaadin.flow.server.frontend.TaskCopyFrontendFiles: Visited 13 resources. Took 89 ms.
2021-01-13 23:30:02,244 INFO [ForkJoinPool.commonPool-worker-3]
com.vaadin.flow.server.frontend.AbstractUpdateImports: No js modules to update 'U:\Documents\eclipse\workspace_Vaadin\vaadin-tutorial-crm\target\frontend\generated-flow-imports.js' file
2021-01-13 23:30:02,252 INFO [ForkJoinPool.commonPool-worker-3]
com.vaadin.flow.server.DevModeHandler: Starting webpack-dev-server
2021-01-13 23:30:02,255 INFO [task-1]
org.hibernate.jpa.internal.util.LogHelper: HHH000204: Processing PersistenceUnitInfo [name: default]
2021-01-13 23:30:02,312 INFO [task-1]
org.hibernate.Version: HHH000412: Hibernate ORM core version 5.4.18.Final
2021-01-13 23:30:02,431 INFO [task-1]
org.hibernate.annotations.common.reflection.java.JavaReflectionManager: HCANN000001: Hibernate Commons Annotations {5.1.0.Final}
2021-01-13 23:30:02,566 INFO [task-1]
org.hibernate.dialect.Dialect: HHH000400: Using dialect: org.hibernate.dialect.H2Dialect
e[38;5;35m
------------------ Starting Frontend compilation. ------------------
e[0m2021-01-13 23:30:02,692 INFO [ForkJoinPool.commonPool-worker-3]
com.vaadin.flow.server.DevModeHandler: Running webpack to compile frontend resources. This may take a moment, please stand by...
2021-01-13 23:30:03,412 WARN [task-1]
org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl: GenerationTarget encountered exception accepting command : Error executing DDL "create table contact (id bigint not null, check boolean not null, email varchar(255) not null, first_name varchar(255) not null, last_name varchar(255) not null, status varchar(255) not null, company_id bigint, primary key (id))" via JDBC Statement
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "create table contact (id bigint not null, check boolean not null, email varchar(255) not null, first_name varchar(255) not null, last_name varchar(255) not null, status varchar(255) not null, company_id bigint, primary key (id))" via JDBC Statement
at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlString(SchemaCreatorImpl.java:439)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlStrings(SchemaCreatorImpl.java:423)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.createFromMetadata(SchemaCreatorImpl.java:314)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:166)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:135)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:121)
at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:156)
at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:73)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:316)
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:469)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1259)
at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:391)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Syntax error in SQL statement "CREATE TABLE CONTACT (ID BIGINT NOT NULL, CHECK BOOLEAN NOT[*]
NULL, EMAIL VARCHAR(255) NOT NULL, FIRST_NAME VARCHAR(255) NOT NULL, LAST_NAME VARCHAR(255) NOT NULL, STATUS VARCHAR(255) NOT NULL, COMPANY_ID BIGINT, PRIMARY KEY (ID))"; expected "AND, OR, NOCHECK, CHECK, ,, )"; SQL statement:
create table contact (id bigint not null, check boolean not null, email varchar(255) not null, first_name varchar(255) not null, last_name varchar(255) not null, status varchar(255) not null, company_id bigint, primary key (id)) [42001-200]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:453)
at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)
at org.h2.message.DbException.getSyntaxError(DbException.java:243)
at org.h2.command.Parser.getSyntaxError(Parser.java:1053)
at org.h2.command.Parser.read(Parser.java:4995)
at org.h2.command.Parser.readIfMore(Parser.java:1462)
at org.h2.command.Parser.parseCreateTable(Parser.java:8380)
at org.h2.command.Parser.parseCreate(Parser.java:6276)
at org.h2.command.Parser.parsePrepared(Parser.java:903)
at org.h2.command.Parser.parse(Parser.java:843)
at org.h2.command.Parser.parse(Parser.java:819)
at org.h2.command.Parser.prepareCommand(Parser.java:738)
at org.h2.engine.Session.prepareLocal(Session.java:657)
at org.h2.engine.Session.prepareCommand(Session.java:595)
at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1235)
at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:212)
at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:201)
at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:95)
at com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java)
at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54)
... 18 common frames omitted
2021-01-13 23:30:03,414 WARN [task-1]
org.hibernate.tool.schema.internal.ExceptionHandlerLoggedImpl: GenerationTarget encountered exception accepting command : Error executing DDL "alter table contact add constraint FKpgbqt6dnai52x55o1qvsx1dfn foreign key (company_id) references company" via JDBC Statement
org.hibernate.tool.schema.spi.CommandAcceptanceException: Error executing DDL "alter table contact add constraint FKpgbqt6dnai52x55o1qvsx1dfn foreign key (company_id) references company" via JDBC Statement
at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:67)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlString(SchemaCreatorImpl.java:439)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.applySqlStrings(SchemaCreatorImpl.java:423)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.createFromMetadata(SchemaCreatorImpl.java:374)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.performCreation(SchemaCreatorImpl.java:166)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:135)
at org.hibernate.tool.schema.internal.SchemaCreatorImpl.doCreation(SchemaCreatorImpl.java:121)
at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:156)
at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:73)
at org.hibernate.internal.SessionFactoryImpl.<init>(SessionFactoryImpl.java:316)
at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:469)
at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1259)
at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:58)
at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:365)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:391)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "CONTACT" not found; SQL statement:
alter table contact add constraint FKpgbqt6dnai52x55o1qvsx1dfn foreign key (company_id) references company [42102-200]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:453)
at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)
at org.h2.message.DbException.get(DbException.java:205)
at org.h2.message.DbException.get(DbException.java:181)
at org.h2.command.ddl.AlterTableAddConstraint.tryUpdate(AlterTableAddConstraint.java:108)
at org.h2.command.ddl.AlterTableAddConstraint.update(AlterTableAddConstraint.java:78)
at org.h2.command.CommandContainer.update(CommandContainer.java:198)
at org.h2.command.Command.executeUpdate(Command.java:251)
at org.h2.jdbc.JdbcStatement.executeInternal(JdbcStatement.java:228)
at org.h2.jdbc.JdbcStatement.execute(JdbcStatement.java:201)
at com.zaxxer.hikari.pool.ProxyStatement.execute(ProxyStatement.java:95)
at com.zaxxer.hikari.pool.HikariProxyStatement.execute(HikariProxyStatement.java)
at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:54)
... 18 common frames omitted
2021-01-13 23:30:03,420 INFO [task-1]
org.hibernate.engine.transaction.jta.platform.internal.JtaPlatformInitiator: HHH000490: Using JtaPlatform implementation: [org.hibernate.engine.transaction.jta.platform.internal.NoJtaPlatform]
2021-01-13 23:30:03,435 INFO [task-1]
org.springframework.orm.jpa.AbstractEntityManagerFactoryBean: Initialized JPA EntityManagerFactory for persistence unit 'default'
2021-01-13 23:30:03,937 WARN [restartedMain]
org.hibernate.engine.jdbc.spi.SqlExceptionHelper: SQL Error: 42102, SQLState: 42S02
2021-01-13 23:30:03,937 ERROR [restartedMain]
org.hibernate.engine.jdbc.spi.SqlExceptionHelper: Table "CONTACT" not found; SQL statement:
select count(*) as col_0_0_ from contact contact0_ [42102-200]
2021-01-13 23:30:03,947 WARN [restartedMain]
org.springframework.context.support.AbstractApplicationContext: Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contactService': Invocation of init method failed; nested exception is org.springframework.dao.InvalidDataAccessResourceUsageException: could not prepare statement; SQL [select count(*) as col_0_0_ from contact contact0_]
; nested exception is org.hibernate.exception.SQLGrammarException: could not prepare statement
2021-01-13 23:30:03,966 INFO [task-2]
org.springframework.boot.devtools.autoconfigure.OptionalLiveReloadServer: LiveReload server is running on port 35729
2021-01-13 23:30:03,967 INFO [restartedMain]
org.springframework.orm.jpa.AbstractEntityManagerFactoryBean: Closing JPA EntityManagerFactory for persistence unit 'default'
2021-01-13 23:30:03,968 INFO [restartedMain]
org.hibernate.tool.schema.internal.SchemaDropperImpl$DelayedDropActionImpl: HHH000477: Starting delayed evictData of schema as part of SessionFactory shut-down'
2021-01-13 23:30:03,981 INFO [restartedMain]
org.springframework.scheduling.concurrent.ExecutorConfigurationSupport: Shutting down ExecutorService 'applicationTaskExecutor'
2021-01-13 23:30:04,211 WARN [restartedMain]
org.springframework.beans.factory.support.DisposableBeanAdapter: Invocation of destroy method failed on bean with name 'inMemoryDatabaseShutdownExecutor': org.h2.jdbc.JdbcSQLNonTransientConnectionException: Database is already closed (to disable automatic closing at VM shutdown, add ";DB_CLOSE_ON_EXIT=FALSE" to the db URL) [90121-200]
2021-01-13 23:30:04,211 INFO [restartedMain]
com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Shutdown initiated...
2021-01-13 23:30:04,218 INFO [restartedMain]
com.zaxxer.hikari.HikariDataSource: HikariPool-1 - Shutdown completed.
2021-01-13 23:30:04,220 INFO [restartedMain]
org.apache.juli.logging.DirectJDKLog: Stopping service [Tomcat]
2021-01-13 23:30:04,231 INFO [restartedMain]
org.springframework.boot.autoconfigure.logging.ConditionEvaluationReportLoggingListener:
Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.
2021-01-13 23:30:04,238 ERROR [restartedMain]
org.springframework.boot.SpringApplication: Application run failed
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'contactService': Invocation of init method failed; nested exception is org.springframework.dao.InvalidDataAccessResourceUsageException: could not prepare statement; SQL [select count(*) as col_0_0_ from contact contact0_]
; nested exception is org.hibernate.exception.SQLGrammarException: could not prepare statement
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:160)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:415)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1786)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:594)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:516)
at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:324)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:226)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:322)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:897)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:879)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:551)
at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:143)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:758)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:750)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:397)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:315)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1237)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:1226)
at com.vaadin.tutorial.crm.Application.main(Application.java:19)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:49)
Caused by: org.springframework.dao.InvalidDataAccessResourceUsageException: could not prepare statement; SQL [select count(*) as col_0_0_ from contact contact0_]
; nested exception is org.hibernate.exception.SQLGrammarException: could not prepare statement
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:281)
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:255)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:528)
at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61)
at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:242)
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:153)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:178)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)
at com.sun.proxy.$Proxy121.count(Unknown Source)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:344)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:205)
at com.sun.proxy.$Proxy89.count(Unknown Source)
at com.vaadin.tutorial.crm.backend.service.ContactService.populateTestData(ContactService.java:69)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:389)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:333)
at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:157)
... 24 common frames omitted
Caused by: org.hibernate.exception.SQLGrammarException: could not prepare statement
at org.hibernate.exception.internal.SQLExceptionTypeDelegate.convert(SQLExceptionTypeDelegate.java:63)
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:186)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl.prepareQueryStatement(StatementPreparerImpl.java:151)
at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:2111)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2048)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2026)
at org.hibernate.loader.Loader.doQuery(Loader.java:951)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:352)
at org.hibernate.loader.Loader.doList(Loader.java:2857)
at org.hibernate.loader.Loader.doList(Loader.java:2839)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2671)
at org.hibernate.loader.Loader.list(Loader.java:2666)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:506)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:400)
at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:219)
at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1412)
at org.hibernate.query.internal.AbstractProducedQuery.doList(AbstractProducedQuery.java:1565)
at org.hibernate.query.internal.AbstractProducedQuery.list(AbstractProducedQuery.java:1533)
at org.hibernate.query.internal.AbstractProducedQuery.getSingleResult(AbstractProducedQuery.java:1581)
at org.springframework.data.jpa.repository.support.SimpleJpaRepository.count(SimpleJpaRepository.java:533)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.springframework.data.repository.core.support.ImplementationInvocationMetadata.invoke(ImplementationInvocationMetadata.java:72)
at org.springframework.data.repository.core.support.RepositoryComposition$RepositoryFragments.invoke(RepositoryComposition.java:382)
at org.springframework.data.repository.core.support.RepositoryComposition.invoke(RepositoryComposition.java:205)
at org.springframework.data.repository.core.support.RepositoryFactorySupport$ImplementationMethodExecutionInterceptor.invoke(RepositoryFactorySupport.java:549)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.doInvoke(QueryExecutorMethodInterceptor.java:155)
at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.invoke(QueryExecutorMethodInterceptor.java:130)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.projection.DefaultMethodInvokingMethodInterceptor.invoke(DefaultMethodInvokingMethodInterceptor.java:80)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:367)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:118)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139)
... 46 common frames omitted
Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Table "CONTACT" not found; SQL statement:
select count(*) as col_0_0_ from contact contact0_ [42102-200]
at org.h2.message.DbException.getJdbcSQLException(DbException.java:453)
at org.h2.message.DbException.getJdbcSQLException(DbException.java:429)
at org.h2.message.DbException.get(DbException.java:205)
at org.h2.message.DbException.get(DbException.java:181)
at org.h2.command.Parser.readTableOrView(Parser.java:7628)
at org.h2.command.Parser.readTableFilter(Parser.java:1970)
at org.h2.command.Parser.parseSelectFromPart(Parser.java:2827)
at org.h2.command.Parser.parseSelect(Parser.java:2959)
at org.h2.command.Parser.parseQuerySub(Parser.java:2817)
at org.h2.command.Parser.parseSelectUnion(Parser.java:2649)
at org.h2.command.Parser.parseQuery(Parser.java:2620)
at org.h2.command.Parser.parsePrepared(Parser.java:868)
at org.h2.command.Parser.parse(Parser.java:843)
at org.h2.command.Parser.parse(Parser.java:815)
at org.h2.command.Parser.prepareCommand(Parser.java:738)
at org.h2.engine.Session.prepareLocal(Session.java:657)
at org.h2.engine.Session.prepareCommand(Session.java:595)
at org.h2.jdbc.JdbcConnection.prepareCommand(JdbcConnection.java:1235)
at org.h2.jdbc.JdbcPreparedStatement.<init>(JdbcPreparedStatement.java:76)
at org.h2.jdbc.JdbcConnection.prepareStatement(JdbcConnection.java:352)
at com.zaxxer.hikari.pool.ProxyConnection.prepareStatement(ProxyConnection.java:337)
at com.zaxxer.hikari.pool.HikariProxyConnection.prepareStatement(HikariProxyConnection.java)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$5.doPrepare(StatementPreparerImpl.java:149)
at org.hibernate.engine.jdbc.internal.StatementPreparerImpl$StatementPreparationTemplate.prepareStatement(StatementPreparerImpl.java:176)
... 82 common frames omitted