From df8665b69fcdf1888196d89e4ae7694ea83de689 Mon Sep 17 00:00:00 2001 From: Nour Eldien Ayman Date: Sat, 3 May 2025 17:05:59 +0300 Subject: [PATCH 1/6] Remove logs --- logs/app.log | 1120 -------------------------------------------------- 1 file changed, 1120 deletions(-) delete mode 100644 logs/app.log diff --git a/logs/app.log b/logs/app.log deleted file mode 100644 index b3d3235..0000000 --- a/logs/app.log +++ /dev/null @@ -1,1120 +0,0 @@ -2025-05-02T19:47:03.395+03:00 INFO 22144 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : Starting AuthApplication using Java 23.0.2 with PID 22144 (D:\myGithub\authentication\target\classes started by yehia in D:\myGithub\authentication) -2025-05-02T19:47:03.397+03:00 DEBUG 22144 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : Running with Spring Boot v3.4.5, Spring v6.2.6 -2025-05-02T19:47:03.399+03:00 INFO 22144 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : No active profile set, falling back to 1 default profile: "default" -2025-05-02T19:47:03.494+03:00 INFO 22144 --- [auth] [restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable -2025-05-02T19:47:03.495+03:00 INFO 22144 --- [auth] [restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG' -2025-05-02T19:47:05.086+03:00 INFO 22144 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode -2025-05-02T19:47:05.090+03:00 INFO 22144 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-05-02T19:47:05.434+03:00 INFO 22144 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 323 ms. Found 3 JPA repository interfaces. -2025-05-02T19:47:05.480+03:00 INFO 22144 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode -2025-05-02T19:47:05.482+03:00 INFO 22144 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode. -2025-05-02T19:47:05.507+03:00 INFO 22144 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.RefreshTokenRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:47:05.508+03:00 INFO 22144 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.RoleRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:47:05.509+03:00 INFO 22144 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.UserRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:47:05.510+03:00 INFO 22144 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 13 ms. Found 0 Redis repository interfaces. -2025-05-02T19:47:06.558+03:00 INFO 22144 --- [auth] [restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8080 (http) -2025-05-02T19:47:06.581+03:00 INFO 22144 --- [auth] [restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat] -2025-05-02T19:47:06.582+03:00 INFO 22144 --- [auth] [restartedMain] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.40] -2025-05-02T19:47:06.706+03:00 INFO 22144 --- [auth] [restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/api] : Initializing Spring embedded WebApplicationContext -2025-05-02T19:47:06.707+03:00 INFO 22144 --- [auth] [restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 3210 ms -2025-05-02T19:47:06.983+03:00 INFO 22144 --- [auth] [restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] -2025-05-02T19:47:07.074+03:00 INFO 22144 --- [auth] [restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.6.13.Final -2025-05-02T19:47:07.135+03:00 INFO 22144 --- [auth] [restartedMain] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled -2025-05-02T19:47:07.612+03:00 INFO 22144 --- [auth] [restartedMain] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer -2025-05-02T19:47:07.660+03:00 INFO 22144 --- [auth] [restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... -2025-05-02T19:47:09.112+03:00 WARN 22144 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 28P01 -2025-05-02T19:47:09.113+03:00 ERROR 22144 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : FATAL: password authentication failed for user "postgres" -2025-05-02T19:47:09.116+03:00 WARN 22144 --- [auth] [restartedMain] o.h.e.j.e.i.JdbcEnvironmentInitiator : HHH000342: Could not obtain connection to query metadata - -org.hibernate.exception.GenericJDBCException: unable to obtain isolated JDBC connection [FATAL: password authentication failed for user "postgres"] [n/a] - at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:63) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:108) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:94) - at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcIsolationDelegate.delegateWork(JdbcIsolationDelegate.java:116) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.getJdbcEnvironmentUsingJdbcMetadata(JdbcEnvironmentInitiator.java:320) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:129) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:81) - at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:130) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:238) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:215) - at org.hibernate.boot.model.relational.Database.(Database.java:45) - at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.getDatabase(InFlightMetadataCollectorImpl.java:226) - at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.(InFlightMetadataCollectorImpl.java:194) - at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:171) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1442) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1513) - at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:66) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:390) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:419) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:400) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:366) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:691) - at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:513) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1367) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1197) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1717) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1466) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:207) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:211) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:174) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:169) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAdaptableBeans(ServletContextInitializerBeans.java:154) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:87) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:271) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:245) - at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:52) - at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4464) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:772) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:203) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardService.startInternal(StandardService.java:412) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:870) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.startup.Tomcat.start(Tomcat.java:438) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:128) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:107) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:517) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:219) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:193) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:167) - at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:621) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) - at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) - at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1362) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1351) - at com.podzilla.auth.AuthApplication.main(AuthApplication.java:10) - at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) - at java.base/java.lang.reflect.Method.invoke(Method.java:580) - at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) -Caused by: org.postgresql.util.PSQLException: FATAL: password authentication failed for user "postgres" - at org.postgresql.core.v3.ConnectionFactoryImpl.doAuthentication(ConnectionFactoryImpl.java:704) - at org.postgresql.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:213) - at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:268) - at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:54) - at org.postgresql.jdbc.PgConnection.(PgConnection.java:273) - at org.postgresql.Driver.makeConnection(Driver.java:446) - at org.postgresql.Driver.connect(Driver.java:298) - at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) - at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) - at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) - at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) - at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) - at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) - at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) - at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:126) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:467) - at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcIsolationDelegate.delegateWork(JdbcIsolationDelegate.java:61) - ... 122 common frames omitted - -2025-05-02T19:47:09.179+03:00 WARN 22144 --- [auth] [restartedMain] org.hibernate.orm.deprecation : HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) -2025-05-02T19:47:09.198+03:00 INFO 22144 --- [auth] [restartedMain] org.hibernate.orm.connections.pooling : HHH10001005: Database info: - Database JDBC URL [Connecting through datasource 'HikariDataSource (null)'] - Database driver: undefined/unknown - Database version: 12.0 - Autocommit mode: undefined/unknown - Isolation level: undefined/unknown - Minimum pool size: undefined/unknown - Maximum pool size: undefined/unknown -2025-05-02T19:47:10.853+03:00 INFO 22144 --- [auth] [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-05-02T19:47:10.876+03:00 INFO 22144 --- [auth] [restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... -2025-05-02T19:47:11.955+03:00 WARN 22144 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 28P01 -2025-05-02T19:47:11.955+03:00 ERROR 22144 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : FATAL: password authentication failed for user "postgres" -2025-05-02T19:47:11.970+03:00 ERROR 22144 --- [auth] [restartedMain] j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: password authentication failed for user "postgres"] [n/a] -2025-05-02T19:47:11.972+03:00 ERROR 22144 --- [auth] [restartedMain] o.s.b.web.embedded.tomcat.TomcatStarter : Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'JWTAuthenticationFilter' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\security\JWTAuthenticationFilter.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' -2025-05-02T19:47:12.015+03:00 INFO 22144 --- [auth] [restartedMain] o.apache.catalina.core.StandardService : Stopping service [Tomcat] -2025-05-02T19:47:12.055+03:00 WARN 22144 --- [auth] [restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server -2025-05-02T19:47:12.070+03:00 INFO 22144 --- [auth] [restartedMain] .s.b.a.l.ConditionEvaluationReportLogger : - -Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. -2025-05-02T19:47:12.098+03:00 ERROR 22144 --- [auth] [restartedMain] o.s.boot.SpringApplication : Application run failed - -org.springframework.context.ApplicationContextException: Unable to start web server - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:170) - at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:621) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) - at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) - at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1362) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1351) - at com.podzilla.auth.AuthApplication.main(AuthApplication.java:10) - at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) - at java.base/java.lang.reflect.Method.invoke(Method.java:580) - at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) -Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:147) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:107) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:517) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:219) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:193) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:167) - ... 11 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'JWTAuthenticationFilter' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\security\JWTAuthenticationFilter.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:207) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:211) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:174) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:169) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAdaptableBeans(ServletContextInitializerBeans.java:154) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:87) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:271) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:245) - at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:52) - at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4464) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:772) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:203) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardService.startInternal(StandardService.java:412) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:870) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.startup.Tomcat.start(Tomcat.java:438) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:128) - ... 16 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - ... 57 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:377) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1717) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1466) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - ... 70 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaSharedEM_entityManagerFactory': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:377) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:691) - at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:513) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1367) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1197) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - ... 83 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: password authentication failed for user "postgres"] [n/a] - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1818) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - ... 95 common frames omitted -Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: password authentication failed for user "postgres"] [n/a] - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:431) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:400) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:366) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814) - ... 102 common frames omitted -Caused by: org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: password authentication failed for user "postgres"] [n/a] - at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:63) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:108) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:94) - at org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl.getIsolatedConnection(DdlTransactionIsolatorNonJtaImpl.java:74) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.getIsolatedConnection(GenerationTargetToDatabase.java:60) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.jdbcStatement(GenerationTargetToDatabase.java:112) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:79) - at org.hibernate.tool.schema.internal.Helper.applySqlString(Helper.java:233) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.dropFromMetadata(SchemaDropperImpl.java:213) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.performDrop(SchemaDropperImpl.java:186) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:156) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:116) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:238) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.lambda$process$5(SchemaManagementToolCoordinator.java:144) - at java.base/java.util.HashMap.forEach(HashMap.java:1430) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:141) - at org.hibernate.boot.internal.SessionFactoryObserverForSchemaExport.sessionFactoryCreated(SessionFactoryObserverForSchemaExport.java:37) - at org.hibernate.internal.SessionFactoryObserverChain.sessionFactoryCreated(SessionFactoryObserverChain.java:35) - at org.hibernate.internal.SessionFactoryImpl.(SessionFactoryImpl.java:324) - at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:463) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1517) - at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:66) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:390) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:419) - ... 106 common frames omitted -Caused by: org.postgresql.util.PSQLException: FATAL: password authentication failed for user "postgres" - at org.postgresql.core.v3.ConnectionFactoryImpl.doAuthentication(ConnectionFactoryImpl.java:704) - at org.postgresql.core.v3.ConnectionFactoryImpl.tryConnect(ConnectionFactoryImpl.java:213) - at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:268) - at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:54) - at org.postgresql.jdbc.PgConnection.(PgConnection.java:273) - at org.postgresql.Driver.makeConnection(Driver.java:446) - at org.postgresql.Driver.connect(Driver.java:298) - at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) - at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) - at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) - at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) - at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) - at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) - at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) - at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:126) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:467) - at org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl.getIsolatedConnection(DdlTransactionIsolatorNonJtaImpl.java:46) - ... 126 common frames omitted - -2025-05-02T19:47:48.224+03:00 INFO 8468 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : Starting AuthApplication using Java 23.0.2 with PID 8468 (D:\myGithub\authentication\target\classes started by yehia in D:\myGithub\authentication) -2025-05-02T19:47:48.227+03:00 DEBUG 8468 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : Running with Spring Boot v3.4.5, Spring v6.2.6 -2025-05-02T19:47:48.228+03:00 INFO 8468 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : No active profile set, falling back to 1 default profile: "default" -2025-05-02T19:47:48.315+03:00 INFO 8468 --- [auth] [restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable -2025-05-02T19:47:48.316+03:00 INFO 8468 --- [auth] [restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG' -2025-05-02T19:47:49.687+03:00 INFO 8468 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode -2025-05-02T19:47:49.690+03:00 INFO 8468 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-05-02T19:47:49.919+03:00 INFO 8468 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 215 ms. Found 3 JPA repository interfaces. -2025-05-02T19:47:49.949+03:00 INFO 8468 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode -2025-05-02T19:47:49.951+03:00 INFO 8468 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode. -2025-05-02T19:47:49.975+03:00 INFO 8468 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.RefreshTokenRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:47:49.975+03:00 INFO 8468 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.RoleRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:47:49.976+03:00 INFO 8468 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.UserRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:47:49.977+03:00 INFO 8468 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 14 ms. Found 0 Redis repository interfaces. -2025-05-02T19:47:50.821+03:00 INFO 8468 --- [auth] [restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8080 (http) -2025-05-02T19:47:50.850+03:00 INFO 8468 --- [auth] [restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat] -2025-05-02T19:47:50.850+03:00 INFO 8468 --- [auth] [restartedMain] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.40] -2025-05-02T19:47:50.942+03:00 INFO 8468 --- [auth] [restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/api] : Initializing Spring embedded WebApplicationContext -2025-05-02T19:47:50.943+03:00 INFO 8468 --- [auth] [restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2626 ms -2025-05-02T19:47:51.155+03:00 INFO 8468 --- [auth] [restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] -2025-05-02T19:47:51.231+03:00 INFO 8468 --- [auth] [restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.6.13.Final -2025-05-02T19:47:51.284+03:00 INFO 8468 --- [auth] [restartedMain] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled -2025-05-02T19:47:51.698+03:00 INFO 8468 --- [auth] [restartedMain] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer -2025-05-02T19:47:51.744+03:00 INFO 8468 --- [auth] [restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... -2025-05-02T19:47:53.013+03:00 WARN 8468 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 3D000 -2025-05-02T19:47:53.015+03:00 ERROR 8468 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : FATAL: database "authDB" does not exist -2025-05-02T19:47:53.017+03:00 WARN 8468 --- [auth] [restartedMain] o.h.e.j.e.i.JdbcEnvironmentInitiator : HHH000342: Could not obtain connection to query metadata - -org.hibernate.exception.GenericJDBCException: unable to obtain isolated JDBC connection [FATAL: database "authDB" does not exist] [n/a] - at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:63) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:108) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:94) - at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcIsolationDelegate.delegateWork(JdbcIsolationDelegate.java:116) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.getJdbcEnvironmentUsingJdbcMetadata(JdbcEnvironmentInitiator.java:320) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:129) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:81) - at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:130) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:238) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:215) - at org.hibernate.boot.model.relational.Database.(Database.java:45) - at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.getDatabase(InFlightMetadataCollectorImpl.java:226) - at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.(InFlightMetadataCollectorImpl.java:194) - at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:171) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1442) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1513) - at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:66) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:390) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:419) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:400) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:366) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:691) - at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:513) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1367) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1197) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1717) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1466) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:207) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:211) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:174) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:169) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAdaptableBeans(ServletContextInitializerBeans.java:154) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:87) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:271) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:245) - at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:52) - at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4464) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:772) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:203) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardService.startInternal(StandardService.java:412) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:870) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.startup.Tomcat.start(Tomcat.java:438) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:128) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:107) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:517) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:219) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:193) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:167) - at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:621) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) - at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) - at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1362) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1351) - at com.podzilla.auth.AuthApplication.main(AuthApplication.java:10) - at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) - at java.base/java.lang.reflect.Method.invoke(Method.java:580) - at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) -Caused by: org.postgresql.util.PSQLException: FATAL: database "authDB" does not exist - at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2733) - at org.postgresql.core.v3.QueryExecutorImpl.readStartupMessages(QueryExecutorImpl.java:2845) - at org.postgresql.core.v3.QueryExecutorImpl.(QueryExecutorImpl.java:176) - at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:323) - at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:54) - at org.postgresql.jdbc.PgConnection.(PgConnection.java:273) - at org.postgresql.Driver.makeConnection(Driver.java:446) - at org.postgresql.Driver.connect(Driver.java:298) - at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) - at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) - at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) - at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) - at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) - at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) - at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) - at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:126) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:467) - at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcIsolationDelegate.delegateWork(JdbcIsolationDelegate.java:61) - ... 122 common frames omitted - -2025-05-02T19:47:53.065+03:00 WARN 8468 --- [auth] [restartedMain] org.hibernate.orm.deprecation : HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) -2025-05-02T19:47:53.089+03:00 INFO 8468 --- [auth] [restartedMain] org.hibernate.orm.connections.pooling : HHH10001005: Database info: - Database JDBC URL [Connecting through datasource 'HikariDataSource (null)'] - Database driver: undefined/unknown - Database version: 12.0 - Autocommit mode: undefined/unknown - Isolation level: undefined/unknown - Minimum pool size: undefined/unknown - Maximum pool size: undefined/unknown -2025-05-02T19:47:54.517+03:00 INFO 8468 --- [auth] [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-05-02T19:47:54.540+03:00 INFO 8468 --- [auth] [restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... -2025-05-02T19:47:55.632+03:00 WARN 8468 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 3D000 -2025-05-02T19:47:55.632+03:00 ERROR 8468 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : FATAL: database "authDB" does not exist -2025-05-02T19:47:55.639+03:00 ERROR 8468 --- [auth] [restartedMain] j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: database "authDB" does not exist] [n/a] -2025-05-02T19:47:55.641+03:00 ERROR 8468 --- [auth] [restartedMain] o.s.b.web.embedded.tomcat.TomcatStarter : Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'JWTAuthenticationFilter' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\security\JWTAuthenticationFilter.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' -2025-05-02T19:47:55.677+03:00 INFO 8468 --- [auth] [restartedMain] o.apache.catalina.core.StandardService : Stopping service [Tomcat] -2025-05-02T19:47:55.685+03:00 WARN 8468 --- [auth] [restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server -2025-05-02T19:47:55.705+03:00 INFO 8468 --- [auth] [restartedMain] .s.b.a.l.ConditionEvaluationReportLogger : - -Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. -2025-05-02T19:47:55.737+03:00 ERROR 8468 --- [auth] [restartedMain] o.s.boot.SpringApplication : Application run failed - -org.springframework.context.ApplicationContextException: Unable to start web server - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:170) - at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:621) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) - at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) - at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1362) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1351) - at com.podzilla.auth.AuthApplication.main(AuthApplication.java:10) - at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) - at java.base/java.lang.reflect.Method.invoke(Method.java:580) - at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) -Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:147) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:107) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:517) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:219) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:193) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:167) - ... 11 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'JWTAuthenticationFilter' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\security\JWTAuthenticationFilter.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:207) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:211) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:174) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:169) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAdaptableBeans(ServletContextInitializerBeans.java:154) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:87) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:271) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:245) - at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:52) - at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4464) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:772) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:203) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardService.startInternal(StandardService.java:412) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:870) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.startup.Tomcat.start(Tomcat.java:438) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:128) - ... 16 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - ... 57 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:377) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1717) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1466) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - ... 70 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaSharedEM_entityManagerFactory': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:377) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:691) - at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:513) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1367) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1197) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - ... 83 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: database "authDB" does not exist] [n/a] - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1818) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - ... 95 common frames omitted -Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: database "authDB" does not exist] [n/a] - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:431) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:400) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:366) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814) - ... 102 common frames omitted -Caused by: org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: database "authDB" does not exist] [n/a] - at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:63) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:108) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:94) - at org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl.getIsolatedConnection(DdlTransactionIsolatorNonJtaImpl.java:74) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.getIsolatedConnection(GenerationTargetToDatabase.java:60) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.jdbcStatement(GenerationTargetToDatabase.java:112) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:79) - at org.hibernate.tool.schema.internal.Helper.applySqlString(Helper.java:233) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.dropFromMetadata(SchemaDropperImpl.java:213) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.performDrop(SchemaDropperImpl.java:186) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:156) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:116) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:238) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.lambda$process$5(SchemaManagementToolCoordinator.java:144) - at java.base/java.util.HashMap.forEach(HashMap.java:1430) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:141) - at org.hibernate.boot.internal.SessionFactoryObserverForSchemaExport.sessionFactoryCreated(SessionFactoryObserverForSchemaExport.java:37) - at org.hibernate.internal.SessionFactoryObserverChain.sessionFactoryCreated(SessionFactoryObserverChain.java:35) - at org.hibernate.internal.SessionFactoryImpl.(SessionFactoryImpl.java:324) - at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:463) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1517) - at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:66) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:390) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:419) - ... 106 common frames omitted -Caused by: org.postgresql.util.PSQLException: FATAL: database "authDB" does not exist - at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2733) - at org.postgresql.core.v3.QueryExecutorImpl.readStartupMessages(QueryExecutorImpl.java:2845) - at org.postgresql.core.v3.QueryExecutorImpl.(QueryExecutorImpl.java:176) - at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:323) - at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:54) - at org.postgresql.jdbc.PgConnection.(PgConnection.java:273) - at org.postgresql.Driver.makeConnection(Driver.java:446) - at org.postgresql.Driver.connect(Driver.java:298) - at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) - at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) - at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) - at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) - at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) - at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) - at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) - at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:126) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:467) - at org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl.getIsolatedConnection(DdlTransactionIsolatorNonJtaImpl.java:46) - ... 126 common frames omitted - -2025-05-02T19:50:53.681+03:00 INFO 11648 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : Starting AuthApplication using Java 23.0.2 with PID 11648 (D:\myGithub\authentication\target\classes started by yehia in D:\myGithub\authentication) -2025-05-02T19:50:53.683+03:00 DEBUG 11648 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : Running with Spring Boot v3.4.5, Spring v6.2.6 -2025-05-02T19:50:53.685+03:00 INFO 11648 --- [auth] [restartedMain] com.podzilla.auth.AuthApplication : No active profile set, falling back to 1 default profile: "default" -2025-05-02T19:50:53.770+03:00 INFO 11648 --- [auth] [restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable -2025-05-02T19:50:53.770+03:00 INFO 11648 --- [auth] [restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG' -2025-05-02T19:50:55.149+03:00 INFO 11648 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode -2025-05-02T19:50:55.151+03:00 INFO 11648 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2025-05-02T19:50:55.379+03:00 INFO 11648 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 214 ms. Found 3 JPA repository interfaces. -2025-05-02T19:50:55.406+03:00 INFO 11648 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Multiple Spring Data modules found, entering strict repository configuration mode -2025-05-02T19:50:55.408+03:00 INFO 11648 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Bootstrapping Spring Data Redis repositories in DEFAULT mode. -2025-05-02T19:50:55.432+03:00 INFO 11648 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.RefreshTokenRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:50:55.433+03:00 INFO 11648 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.RoleRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:50:55.434+03:00 INFO 11648 --- [auth] [restartedMain] .RepositoryConfigurationExtensionSupport : Spring Data Redis - Could not safely identify store assignment for repository candidate interface com.podzilla.auth.repository.UserRepository; If you want this repository to be a Redis repository, consider annotating your entities with one of these annotations: org.springframework.data.redis.core.RedisHash (preferred), or consider extending one of the following types with your repository: org.springframework.data.keyvalue.repository.KeyValueRepository -2025-05-02T19:50:55.434+03:00 INFO 11648 --- [auth] [restartedMain] .s.d.r.c.RepositoryConfigurationDelegate : Finished Spring Data repository scanning in 13 ms. Found 0 Redis repository interfaces. -2025-05-02T19:50:56.279+03:00 INFO 11648 --- [auth] [restartedMain] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port 8080 (http) -2025-05-02T19:50:56.307+03:00 INFO 11648 --- [auth] [restartedMain] o.apache.catalina.core.StandardService : Starting service [Tomcat] -2025-05-02T19:50:56.308+03:00 INFO 11648 --- [auth] [restartedMain] o.apache.catalina.core.StandardEngine : Starting Servlet engine: [Apache Tomcat/10.1.40] -2025-05-02T19:50:56.402+03:00 INFO 11648 --- [auth] [restartedMain] o.a.c.c.C.[Tomcat].[localhost].[/api] : Initializing Spring embedded WebApplicationContext -2025-05-02T19:50:56.403+03:00 INFO 11648 --- [auth] [restartedMain] w.s.c.ServletWebServerApplicationContext : Root WebApplicationContext: initialization completed in 2632 ms -2025-05-02T19:50:56.612+03:00 INFO 11648 --- [auth] [restartedMain] o.hibernate.jpa.internal.util.LogHelper : HHH000204: Processing PersistenceUnitInfo [name: default] -2025-05-02T19:50:56.689+03:00 INFO 11648 --- [auth] [restartedMain] org.hibernate.Version : HHH000412: Hibernate ORM core version 6.6.13.Final -2025-05-02T19:50:56.741+03:00 INFO 11648 --- [auth] [restartedMain] o.h.c.internal.RegionFactoryInitiator : HHH000026: Second-level cache disabled -2025-05-02T19:50:57.168+03:00 INFO 11648 --- [auth] [restartedMain] o.s.o.j.p.SpringPersistenceUnitInfo : No LoadTimeWeaver setup: ignoring JPA class transformer -2025-05-02T19:50:57.215+03:00 INFO 11648 --- [auth] [restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... -2025-05-02T19:50:58.581+03:00 WARN 11648 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 3D000 -2025-05-02T19:50:58.581+03:00 ERROR 11648 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : FATAL: database "authDB" does not exist -2025-05-02T19:50:58.583+03:00 WARN 11648 --- [auth] [restartedMain] o.h.e.j.e.i.JdbcEnvironmentInitiator : HHH000342: Could not obtain connection to query metadata - -org.hibernate.exception.GenericJDBCException: unable to obtain isolated JDBC connection [FATAL: database "authDB" does not exist] [n/a] - at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:63) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:108) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:94) - at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcIsolationDelegate.delegateWork(JdbcIsolationDelegate.java:116) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.getJdbcEnvironmentUsingJdbcMetadata(JdbcEnvironmentInitiator.java:320) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:129) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator.initiateService(JdbcEnvironmentInitiator.java:81) - at org.hibernate.boot.registry.internal.StandardServiceRegistryImpl.initiateService(StandardServiceRegistryImpl.java:130) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.createService(AbstractServiceRegistryImpl.java:263) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.initializeService(AbstractServiceRegistryImpl.java:238) - at org.hibernate.service.internal.AbstractServiceRegistryImpl.getService(AbstractServiceRegistryImpl.java:215) - at org.hibernate.boot.model.relational.Database.(Database.java:45) - at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.getDatabase(InFlightMetadataCollectorImpl.java:226) - at org.hibernate.boot.internal.InFlightMetadataCollectorImpl.(InFlightMetadataCollectorImpl.java:194) - at org.hibernate.boot.model.process.spi.MetadataBuildingProcess.complete(MetadataBuildingProcess.java:171) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.metadata(EntityManagerFactoryBuilderImpl.java:1442) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1513) - at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:66) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:390) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:419) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:400) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:366) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:691) - at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:513) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1367) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1197) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1717) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1466) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:207) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:211) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:174) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:169) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAdaptableBeans(ServletContextInitializerBeans.java:154) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:87) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:271) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:245) - at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:52) - at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4464) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:772) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:203) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardService.startInternal(StandardService.java:412) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:870) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.startup.Tomcat.start(Tomcat.java:438) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:128) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:107) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:517) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:219) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:193) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:167) - at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:621) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) - at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) - at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1362) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1351) - at com.podzilla.auth.AuthApplication.main(AuthApplication.java:10) - at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) - at java.base/java.lang.reflect.Method.invoke(Method.java:580) - at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) -Caused by: org.postgresql.util.PSQLException: FATAL: database "authDB" does not exist - at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2733) - at org.postgresql.core.v3.QueryExecutorImpl.readStartupMessages(QueryExecutorImpl.java:2845) - at org.postgresql.core.v3.QueryExecutorImpl.(QueryExecutorImpl.java:176) - at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:323) - at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:54) - at org.postgresql.jdbc.PgConnection.(PgConnection.java:273) - at org.postgresql.Driver.makeConnection(Driver.java:446) - at org.postgresql.Driver.connect(Driver.java:298) - at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) - at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) - at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) - at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) - at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) - at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) - at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) - at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:126) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:467) - at org.hibernate.resource.transaction.backend.jdbc.internal.JdbcIsolationDelegate.delegateWork(JdbcIsolationDelegate.java:61) - ... 122 common frames omitted - -2025-05-02T19:50:58.616+03:00 WARN 11648 --- [auth] [restartedMain] org.hibernate.orm.deprecation : HHH90000025: PostgreSQLDialect does not need to be specified explicitly using 'hibernate.dialect' (remove the property setting and it will be selected by default) -2025-05-02T19:50:58.634+03:00 INFO 11648 --- [auth] [restartedMain] org.hibernate.orm.connections.pooling : HHH10001005: Database info: - Database JDBC URL [Connecting through datasource 'HikariDataSource (null)'] - Database driver: undefined/unknown - Database version: 12.0 - Autocommit mode: undefined/unknown - Isolation level: undefined/unknown - Minimum pool size: undefined/unknown - Maximum pool size: undefined/unknown -2025-05-02T19:51:00.148+03:00 INFO 11648 --- [auth] [restartedMain] o.h.e.t.j.p.i.JtaPlatformInitiator : HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2025-05-02T19:51:00.172+03:00 INFO 11648 --- [auth] [restartedMain] com.zaxxer.hikari.HikariDataSource : HikariPool-1 - Starting... -2025-05-02T19:51:01.282+03:00 WARN 11648 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : SQL Error: 0, SQLState: 3D000 -2025-05-02T19:51:01.282+03:00 ERROR 11648 --- [auth] [restartedMain] o.h.engine.jdbc.spi.SqlExceptionHelper : FATAL: database "authDB" does not exist -2025-05-02T19:51:01.288+03:00 ERROR 11648 --- [auth] [restartedMain] j.LocalContainerEntityManagerFactoryBean : Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: database "authDB" does not exist] [n/a] -2025-05-02T19:51:01.291+03:00 ERROR 11648 --- [auth] [restartedMain] o.s.b.web.embedded.tomcat.TomcatStarter : Error starting Tomcat context. Exception: org.springframework.beans.factory.UnsatisfiedDependencyException. Message: Error creating bean with name 'JWTAuthenticationFilter' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\security\JWTAuthenticationFilter.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' -2025-05-02T19:51:01.328+03:00 INFO 11648 --- [auth] [restartedMain] o.apache.catalina.core.StandardService : Stopping service [Tomcat] -2025-05-02T19:51:01.337+03:00 WARN 11648 --- [auth] [restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.context.ApplicationContextException: Unable to start web server -2025-05-02T19:51:01.355+03:00 INFO 11648 --- [auth] [restartedMain] .s.b.a.l.ConditionEvaluationReportLogger : - -Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. -2025-05-02T19:51:01.386+03:00 ERROR 11648 --- [auth] [restartedMain] o.s.boot.SpringApplication : Application run failed - -org.springframework.context.ApplicationContextException: Unable to start web server - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:170) - at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:621) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) - at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:753) - at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:439) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:318) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1362) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1351) - at com.podzilla.auth.AuthApplication.main(AuthApplication.java:10) - at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:103) - at java.base/java.lang.reflect.Method.invoke(Method.java:580) - at org.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) -Caused by: org.springframework.boot.web.server.WebServerException: Unable to start embedded Tomcat - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:147) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.(TomcatWebServer.java:107) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getTomcatWebServer(TomcatServletWebServerFactory.java:517) - at org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory.getWebServer(TomcatServletWebServerFactory.java:219) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.createWebServer(ServletWebServerApplicationContext.java:193) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.onRefresh(ServletWebServerApplicationContext.java:167) - ... 11 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'JWTAuthenticationFilter' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\security\JWTAuthenticationFilter.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:207) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.getOrderedBeansOfType(ServletContextInitializerBeans.java:211) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:174) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAsRegistrationBean(ServletContextInitializerBeans.java:169) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.addAdaptableBeans(ServletContextInitializerBeans.java:154) - at org.springframework.boot.web.servlet.ServletContextInitializerBeans.(ServletContextInitializerBeans.java:87) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.getServletContextInitializerBeans(ServletWebServerApplicationContext.java:271) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.selfInitialize(ServletWebServerApplicationContext.java:245) - at org.springframework.boot.web.embedded.tomcat.TomcatStarter.onStartup(TomcatStarter.java:52) - at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:4464) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:772) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1203) - at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1193) - at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:317) - at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75) - at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:148) - at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:749) - at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:203) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardService.startInternal(StandardService.java:412) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:870) - at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:164) - at org.apache.catalina.startup.Tomcat.start(Tomcat.java:438) - at org.springframework.boot.web.embedded.tomcat.TomcatWebServer.initialize(TomcatWebServer.java:128) - ... 16 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'tokenService' defined in file [D:\myGithub\authentication\target\classes\com\podzilla\auth\service\TokenService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:804) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:240) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1387) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1224) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - ... 57 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'userRepository' defined in com.podzilla.auth.repository.UserRepository defined in @EnableJpaRepositories declared on JpaRepositoriesRegistrar.EnableJpaRepositoriesConfiguration: Cannot resolve reference to bean 'jpaSharedEM_entityManagerFactory' while setting bean property 'entityManager' - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:377) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1717) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1466) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:606) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1681) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1627) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:913) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:791) - ... 70 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'jpaSharedEM_entityManagerFactory': Cannot resolve reference to bean 'entityManagerFactory' while setting constructor argument - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:377) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:135) - at org.springframework.beans.factory.support.ConstructorResolver.resolveConstructorArguments(ConstructorResolver.java:691) - at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:513) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1367) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1197) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:569) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - ... 83 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: database "authDB" does not exist] [n/a] - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1818) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:607) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:529) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:339) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:371) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202) - at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:365) - ... 95 common frames omitted -Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: database "authDB" does not exist] [n/a] - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:431) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet(AbstractEntityManagerFactoryBean.java:400) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet(LocalContainerEntityManagerFactoryBean.java:366) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1865) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1814) - ... 102 common frames omitted -Caused by: org.hibernate.exception.GenericJDBCException: Unable to open JDBC Connection for DDL execution [FATAL: database "authDB" does not exist] [n/a] - at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:63) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:108) - at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:94) - at org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl.getIsolatedConnection(DdlTransactionIsolatorNonJtaImpl.java:74) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.getIsolatedConnection(GenerationTargetToDatabase.java:60) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.jdbcStatement(GenerationTargetToDatabase.java:112) - at org.hibernate.tool.schema.internal.exec.GenerationTargetToDatabase.accept(GenerationTargetToDatabase.java:79) - at org.hibernate.tool.schema.internal.Helper.applySqlString(Helper.java:233) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.dropFromMetadata(SchemaDropperImpl.java:213) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.performDrop(SchemaDropperImpl.java:186) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:156) - at org.hibernate.tool.schema.internal.SchemaDropperImpl.doDrop(SchemaDropperImpl.java:116) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.performDatabaseAction(SchemaManagementToolCoordinator.java:238) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.lambda$process$5(SchemaManagementToolCoordinator.java:144) - at java.base/java.util.HashMap.forEach(HashMap.java:1430) - at org.hibernate.tool.schema.spi.SchemaManagementToolCoordinator.process(SchemaManagementToolCoordinator.java:141) - at org.hibernate.boot.internal.SessionFactoryObserverForSchemaExport.sessionFactoryCreated(SessionFactoryObserverForSchemaExport.java:37) - at org.hibernate.internal.SessionFactoryObserverChain.sessionFactoryCreated(SessionFactoryObserverChain.java:35) - at org.hibernate.internal.SessionFactoryImpl.(SessionFactoryImpl.java:324) - at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build(SessionFactoryBuilderImpl.java:463) - at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build(EntityManagerFactoryBuilderImpl.java:1517) - at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory(SpringHibernateJpaPersistenceProvider.java:66) - at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory(LocalContainerEntityManagerFactoryBean.java:390) - at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory(AbstractEntityManagerFactoryBean.java:419) - ... 106 common frames omitted -Caused by: org.postgresql.util.PSQLException: FATAL: database "authDB" does not exist - at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2733) - at org.postgresql.core.v3.QueryExecutorImpl.readStartupMessages(QueryExecutorImpl.java:2845) - at org.postgresql.core.v3.QueryExecutorImpl.(QueryExecutorImpl.java:176) - at org.postgresql.core.v3.ConnectionFactoryImpl.openConnectionImpl(ConnectionFactoryImpl.java:323) - at org.postgresql.core.ConnectionFactory.openConnection(ConnectionFactory.java:54) - at org.postgresql.jdbc.PgConnection.(PgConnection.java:273) - at org.postgresql.Driver.makeConnection(Driver.java:446) - at org.postgresql.Driver.connect(Driver.java:298) - at com.zaxxer.hikari.util.DriverDataSource.getConnection(DriverDataSource.java:137) - at com.zaxxer.hikari.pool.PoolBase.newConnection(PoolBase.java:360) - at com.zaxxer.hikari.pool.PoolBase.newPoolEntry(PoolBase.java:202) - at com.zaxxer.hikari.pool.HikariPool.createPoolEntry(HikariPool.java:461) - at com.zaxxer.hikari.pool.HikariPool.checkFailFast(HikariPool.java:550) - at com.zaxxer.hikari.pool.HikariPool.(HikariPool.java:98) - at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:111) - at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:126) - at org.hibernate.engine.jdbc.env.internal.JdbcEnvironmentInitiator$ConnectionProviderJdbcConnectionAccess.obtainConnection(JdbcEnvironmentInitiator.java:467) - at org.hibernate.resource.transaction.backend.jdbc.internal.DdlTransactionIsolatorNonJtaImpl.getIsolatedConnection(DdlTransactionIsolatorNonJtaImpl.java:46) - ... 126 common frames omitted - From d834a860f95c010f4ac7bf55986904a3c9c77ccb Mon Sep 17 00:00:00 2001 From: Nour Eldien Ayman Date: Sat, 3 May 2025 18:40:31 +0300 Subject: [PATCH 2/6] Enhance admin service with user details caching and refactor CustomUserDetails --- .../podzilla/auth/dto/CustomUserDetails.java | 62 +++---------------- .../java/com/podzilla/auth/model/User.java | 5 +- .../auth/security/SecurityConfig.java | 10 ++- .../podzilla/auth/service/AdminService.java | 41 ++++++++++++ .../service/CustomUserDetailsService.java | 23 +------ 5 files changed, 61 insertions(+), 80 deletions(-) diff --git a/src/main/java/com/podzilla/auth/dto/CustomUserDetails.java b/src/main/java/com/podzilla/auth/dto/CustomUserDetails.java index f5bed3d..1337bd7 100644 --- a/src/main/java/com/podzilla/auth/dto/CustomUserDetails.java +++ b/src/main/java/com/podzilla/auth/dto/CustomUserDetails.java @@ -3,14 +3,20 @@ import com.fasterxml.jackson.annotation.JsonIgnore; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.databind.annotation.JsonDeserialize; +import lombok.AllArgsConstructor; +import lombok.Builder; import lombok.Getter; +import lombok.NoArgsConstructor; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.userdetails.UserDetails; -import java.util.Collection; import java.util.Set; @JsonIgnoreProperties(ignoreUnknown = true) +@Builder +@Getter +@NoArgsConstructor(force = true) +@AllArgsConstructor public class CustomUserDetails implements UserDetails { private String username; @@ -21,65 +27,11 @@ public class CustomUserDetails implements UserDetails { @JsonDeserialize(contentAs = CustomGrantedAuthority.class) private Set authorities; - @Getter private final boolean accountNonExpired; - @Getter private final boolean accountNonLocked; - @Getter private final boolean credentialsNonExpired; - @Getter private final boolean enabled; - public CustomUserDetails() { - // No-arg constructor required by Jackson - this.accountNonExpired = true; - this.accountNonLocked = true; - this.credentialsNonExpired = true; - this.enabled = true; - } - - public CustomUserDetails(final String username, final String password, - final Set authorities) { - this.username = username; - this.password = password; - this.authorities = authorities; - this.accountNonExpired = true; - this.accountNonLocked = true; - this.credentialsNonExpired = true; - this.enabled = true; - } - - public CustomUserDetails(final String username, - final String password, - final boolean enabled, - final boolean accountNonExpired, - final boolean accountNonLocked, - final boolean credentialsNonExpired, - final Set authorities) { - this.username = username; - this.password = password; - this.authorities = authorities; - this.accountNonExpired = accountNonExpired; - this.accountNonLocked = accountNonLocked; - this.credentialsNonExpired = credentialsNonExpired; - this.enabled = enabled; - } - - @Override - public String getUsername() { - return username; - } - - @Override - public String getPassword() { - return password; - } - - @Override - public Collection getAuthorities() { - return authorities; - } - public void eraseCredentials() { this.password = null; } diff --git a/src/main/java/com/podzilla/auth/model/User.java b/src/main/java/com/podzilla/auth/model/User.java index d7a382f..313a8c2 100644 --- a/src/main/java/com/podzilla/auth/model/User.java +++ b/src/main/java/com/podzilla/auth/model/User.java @@ -31,7 +31,7 @@ @AllArgsConstructor public class User { @Id - @GeneratedValue(strategy = GenerationType.IDENTITY) + @GeneratedValue(strategy = GenerationType.UUID) private Long id; @NotBlank(message = "Name is required") @@ -45,16 +45,19 @@ public class User { @NotBlank(message = "Password is required") private String password; + @Builder.Default @ManyToMany(fetch = FetchType.EAGER) @JoinTable(name = "users_roles", joinColumns = @JoinColumn(name = "user_id"), inverseJoinColumns = @JoinColumn(name = "role_id")) private Set roles = new HashSet<>(); + @Builder.Default @OneToMany(mappedBy = "user", cascade = CascadeType.ALL, orphanRemoval = true) private Set refreshTokens = new HashSet<>(); + @Builder.Default @Column(columnDefinition = "BOOLEAN DEFAULT TRUE") private Boolean enabled = true; diff --git a/src/main/java/com/podzilla/auth/security/SecurityConfig.java b/src/main/java/com/podzilla/auth/security/SecurityConfig.java index 1ae9147..8da1d06 100644 --- a/src/main/java/com/podzilla/auth/security/SecurityConfig.java +++ b/src/main/java/com/podzilla/auth/security/SecurityConfig.java @@ -2,6 +2,7 @@ import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; +import org.springframework.http.HttpMethod; import org.springframework.security.authentication.AuthenticationManager; import org.springframework.security.authentication.ProviderManager; import org.springframework.security.authentication.dao.DaoAuthenticationProvider; @@ -36,11 +37,14 @@ SecurityFilterChain securityFilterChain(final HttpSecurity http) UsernamePasswordAuthenticationFilter.class) .authorizeHttpRequests((auth) -> auth - .requestMatchers("/auth/login") + .requestMatchers(HttpMethod.POST, + "/auth/login") .permitAll() - .requestMatchers("/auth/register") + .requestMatchers(HttpMethod.POST, + "/auth/register") .permitAll() - .requestMatchers("/auth/refresh-token") + .requestMatchers(HttpMethod.POST, + "/auth/refresh-token") .permitAll() .requestMatchers("/admin/**") .hasAuthority("ROLE_ADMIN") diff --git a/src/main/java/com/podzilla/auth/service/AdminService.java b/src/main/java/com/podzilla/auth/service/AdminService.java index 89d6503..a6afcf4 100644 --- a/src/main/java/com/podzilla/auth/service/AdminService.java +++ b/src/main/java/com/podzilla/auth/service/AdminService.java @@ -1,13 +1,21 @@ package com.podzilla.auth.service; +import com.podzilla.auth.dto.CustomGrantedAuthority; +import com.podzilla.auth.dto.CustomUserDetails; import com.podzilla.auth.model.User; import com.podzilla.auth.repository.UserRepository; import org.slf4j.Logger; import org.slf4j.LoggerFactory; +import org.springframework.cache.annotation.CacheEvict; +import org.springframework.cache.annotation.CachePut; +import org.springframework.security.core.GrantedAuthority; +import org.springframework.security.core.userdetails.UserDetails; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; @Service public class AdminService { @@ -35,6 +43,7 @@ public void updateUserActivation(final Long userId, LOGGER.debug("Updating isActive status for userId={} " + "from {} to {}", userId, user.getEnabled(), isActive); user.setEnabled(isActive); + updateUserDetailsCache(user); userRepository.save(user); LOGGER.debug("User activation status updated " + "successfully for userId={}", userId); @@ -45,7 +54,39 @@ public void updateUserActivation(final Long userId, public void deleteUser(final Long userId) { User user = userService.getUserOrThrow(userId); LOGGER.debug("Deleting user with userId={}", userId); + evictUserDetailsCache(user); userRepository.delete(user); LOGGER.debug("User deleted successfully with userId={}", userId); } + + @CacheEvict(value = "userDetails", key = "#user.email") + public void evictUserDetailsCache(final User user) { + LOGGER.debug("Evicting user details cache for userId={}", user.getId()); + } + + @CachePut(value = "userDetails", key = "#user.email") + public UserDetails updateUserDetailsCache(final User user) { + LOGGER.debug("Updating user details cache for userId={}", user.getId()); + + return getUserDetails(user); + } + + public static UserDetails getUserDetails(final User user) { + Set authorities = user + .getRoles() + .stream() + .map((role) -> new CustomGrantedAuthority( + role.getErole().name())) + .collect(Collectors.toSet()); + + return CustomUserDetails.builder() + .username(user.getEmail()) + .password(user.getPassword()) + .enabled(user.getEnabled()) + .authorities(authorities) + .accountNonExpired(true) + .credentialsNonExpired(true) + .accountNonLocked(true) + .build(); + } } diff --git a/src/main/java/com/podzilla/auth/service/CustomUserDetailsService.java b/src/main/java/com/podzilla/auth/service/CustomUserDetailsService.java index e5392da..bc0973a 100644 --- a/src/main/java/com/podzilla/auth/service/CustomUserDetailsService.java +++ b/src/main/java/com/podzilla/auth/service/CustomUserDetailsService.java @@ -1,20 +1,16 @@ package com.podzilla.auth.service; -import com.podzilla.auth.dto.CustomGrantedAuthority; -import com.podzilla.auth.dto.CustomUserDetails; import com.podzilla.auth.exception.NotFoundException; import com.podzilla.auth.exception.ValidationException; import com.podzilla.auth.model.User; import com.podzilla.auth.repository.UserRepository; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.cache.annotation.Cacheable; -import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.stereotype.Service; -import java.util.Set; -import java.util.stream.Collectors; +import static com.podzilla.auth.service.AdminService.getUserDetails; @Service public class CustomUserDetailsService implements UserDetailsService { @@ -37,22 +33,7 @@ public UserDetails loadUserByUsername(final String email) { throw new ValidationException("User has no roles assigned."); } - Set authorities = user - .getRoles() - .stream() - .map((role) -> new CustomGrantedAuthority( - role.getErole().name())) - .collect(Collectors.toSet()); - - return new CustomUserDetails( - user.getEmail(), - user.getPassword(), - user.getEnabled(), - true, - true, - true, - authorities - ); + return getUserDetails(user); } @Cacheable(value = "userDetails", key = "#email") From 8ea069e5054196cbf619effe0c6887382600e9fc Mon Sep 17 00:00:00 2001 From: Nour Eldien Ayman Date: Sat, 3 May 2025 18:53:29 +0300 Subject: [PATCH 3/6] Refactor user ID type from Long to UUID across admin and user services --- .../java/com/podzilla/auth/controller/AdminController.java | 5 +++-- .../java/com/podzilla/auth/controller/UserController.java | 5 ++++- src/main/java/com/podzilla/auth/model/User.java | 3 ++- .../podzilla/auth/repository/RefreshTokenRepository.java | 2 +- .../java/com/podzilla/auth/repository/UserRepository.java | 3 ++- src/main/java/com/podzilla/auth/service/AdminService.java | 5 +++-- src/main/java/com/podzilla/auth/service/UserService.java | 6 ++++-- .../java/com/podzilla/auth/service/AdminServiceTest.java | 5 +++-- .../podzilla/auth/service/AuthenticationServiceTest.java | 3 ++- .../auth/service/CustomUserDetailsServiceTest.java | 7 ++++--- .../java/com/podzilla/auth/service/TokenServiceTest.java | 4 +--- 11 files changed, 29 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/podzilla/auth/controller/AdminController.java b/src/main/java/com/podzilla/auth/controller/AdminController.java index b2a506c..0976764 100644 --- a/src/main/java/com/podzilla/auth/controller/AdminController.java +++ b/src/main/java/com/podzilla/auth/controller/AdminController.java @@ -15,6 +15,7 @@ import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestParam; import java.util.List; +import java.util.UUID; @RestController @RequestMapping("/admin") @@ -45,7 +46,7 @@ public List getUsers() { description = "User activation status updated successfully") public void updateUserActivation( @Parameter(description = "ID of the user to activate/deactivate") - @PathVariable final Long userId, + @PathVariable final UUID userId, @Parameter(description = "Set to true to activate," + " false to deactivate the user") @@ -65,7 +66,7 @@ public void updateUserActivation( description = "User deleted successfully") public void deleteUser( @Parameter(description = "ID of the user to delete") - @PathVariable final Long userId) { + @PathVariable final UUID userId) { LOGGER.debug("Admin requested to delete user with userId={}", userId); adminService.deleteUser(userId); diff --git a/src/main/java/com/podzilla/auth/controller/UserController.java b/src/main/java/com/podzilla/auth/controller/UserController.java index b99f6b3..eea7dc5 100644 --- a/src/main/java/com/podzilla/auth/controller/UserController.java +++ b/src/main/java/com/podzilla/auth/controller/UserController.java @@ -11,6 +11,9 @@ import org.springframework.web.bind.annotation.PutMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; + +import java.util.UUID; + @RestController @RequestMapping("/user") public class UserController { @@ -29,7 +32,7 @@ public UserController(final UserService userService) { description = "Allows user to update their name.") @ApiResponse(responseCode = "200", description = "User profile updated successfully") - public void updateProfile(@PathVariable final Long userId, + public void updateProfile(@PathVariable final UUID userId, @Valid @RequestBody final String name) { LOGGER.debug("Received updateProfile request for userId={}", userId); userService.updateUserProfile(userId, name); diff --git a/src/main/java/com/podzilla/auth/model/User.java b/src/main/java/com/podzilla/auth/model/User.java index 313a8c2..0acee1e 100644 --- a/src/main/java/com/podzilla/auth/model/User.java +++ b/src/main/java/com/podzilla/auth/model/User.java @@ -15,6 +15,7 @@ import java.util.HashSet; import java.util.Set; +import java.util.UUID; import jakarta.validation.constraints.Email; import jakarta.validation.constraints.NotBlank; @@ -32,7 +33,7 @@ public class User { @Id @GeneratedValue(strategy = GenerationType.UUID) - private Long id; + private UUID id; @NotBlank(message = "Name is required") private String name; diff --git a/src/main/java/com/podzilla/auth/repository/RefreshTokenRepository.java b/src/main/java/com/podzilla/auth/repository/RefreshTokenRepository.java index 89494fc..1664df2 100644 --- a/src/main/java/com/podzilla/auth/repository/RefreshTokenRepository.java +++ b/src/main/java/com/podzilla/auth/repository/RefreshTokenRepository.java @@ -12,6 +12,6 @@ public interface RefreshTokenRepository extends JpaRepository { Optional findByIdAndExpiresAtAfter(UUID id, Instant date); - Optional findByUserIdAndExpiresAtAfter(Long userId, + Optional findByUserIdAndExpiresAtAfter(UUID userId, Instant date); } diff --git a/src/main/java/com/podzilla/auth/repository/UserRepository.java b/src/main/java/com/podzilla/auth/repository/UserRepository.java index 93626e6..683717a 100644 --- a/src/main/java/com/podzilla/auth/repository/UserRepository.java +++ b/src/main/java/com/podzilla/auth/repository/UserRepository.java @@ -5,9 +5,10 @@ import org.springframework.stereotype.Repository; import java.util.Optional; +import java.util.UUID; @Repository -public interface UserRepository extends JpaRepository { +public interface UserRepository extends JpaRepository { Optional findByEmail(String email); Boolean existsByEmail(String email); } diff --git a/src/main/java/com/podzilla/auth/service/AdminService.java b/src/main/java/com/podzilla/auth/service/AdminService.java index a6afcf4..b35de9a 100644 --- a/src/main/java/com/podzilla/auth/service/AdminService.java +++ b/src/main/java/com/podzilla/auth/service/AdminService.java @@ -15,6 +15,7 @@ import java.util.List; import java.util.Set; +import java.util.UUID; import java.util.stream.Collectors; @Service @@ -37,7 +38,7 @@ public List getUsers() { } @Transactional - public void updateUserActivation(final Long userId, + public void updateUserActivation(final UUID userId, final boolean isActive) { User user = userService.getUserOrThrow(userId); LOGGER.debug("Updating isActive status for userId={} " @@ -51,7 +52,7 @@ public void updateUserActivation(final Long userId, @Transactional - public void deleteUser(final Long userId) { + public void deleteUser(final UUID userId) { User user = userService.getUserOrThrow(userId); LOGGER.debug("Deleting user with userId={}", userId); evictUserDetailsCache(user); diff --git a/src/main/java/com/podzilla/auth/service/UserService.java b/src/main/java/com/podzilla/auth/service/UserService.java index 7930da8..1b24454 100644 --- a/src/main/java/com/podzilla/auth/service/UserService.java +++ b/src/main/java/com/podzilla/auth/service/UserService.java @@ -8,6 +8,8 @@ import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; +import java.util.UUID; + @Service public class UserService { @@ -22,7 +24,7 @@ public UserService(final UserRepository userRepository) { @Transactional - public void updateUserProfile(final Long userId, final String name) { + public void updateUserProfile(final UUID userId, final String name) { User user = getUserOrThrow(userId); LOGGER.debug("Updating name for userId={}", userId); user.setName(name); @@ -31,7 +33,7 @@ public void updateUserProfile(final Long userId, final String name) { } - public User getUserOrThrow(final Long userId) { + public User getUserOrThrow(final UUID userId) { LOGGER.debug("Fetching user with id={}", userId); return userRepository.findById(userId) .orElseThrow(() -> { diff --git a/src/test/java/com/podzilla/auth/service/AdminServiceTest.java b/src/test/java/com/podzilla/auth/service/AdminServiceTest.java index f09023b..3d8497d 100644 --- a/src/test/java/com/podzilla/auth/service/AdminServiceTest.java +++ b/src/test/java/com/podzilla/auth/service/AdminServiceTest.java @@ -10,6 +10,7 @@ import java.util.Arrays; import java.util.List; +import java.util.UUID; import static org.junit.jupiter.api.Assertions.assertEquals; import static org.mockito.Mockito.verify; @@ -26,8 +27,8 @@ class AdminServiceTest { @Test void getUsers_shouldReturnListOfUsers() { - User user1 = User.builder().id(1L).email("user1@example.com").name("User One").build(); - User user2 = User.builder().id(2L).email("user2@example.com").name("User Two").build(); + User user1 = User.builder().id(UUID.randomUUID()).email("user1@example.com").name("User One").build(); + User user2 = User.builder().id(UUID.randomUUID()).email("user2@example.com").name("User Two").build(); List expectedUsers = Arrays.asList(user1, user2); when(userRepository.findAll()).thenReturn(expectedUsers); diff --git a/src/test/java/com/podzilla/auth/service/AuthenticationServiceTest.java b/src/test/java/com/podzilla/auth/service/AuthenticationServiceTest.java index 87ac508..0a1dd7b 100644 --- a/src/test/java/com/podzilla/auth/service/AuthenticationServiceTest.java +++ b/src/test/java/com/podzilla/auth/service/AuthenticationServiceTest.java @@ -29,6 +29,7 @@ import java.util.Collections; import java.util.Optional; +import java.util.UUID; import static org.junit.jupiter.api.Assertions.*; import static org.mockito.ArgumentMatchers.any; @@ -74,7 +75,7 @@ void setUp() { userRole = new Role(ERole.ROLE_USER); user = User.builder() - .id(1L) + .id(UUID.randomUUID()) .name("Test User") .email("test@example.com") .password("encodedPassword") diff --git a/src/test/java/com/podzilla/auth/service/CustomUserDetailsServiceTest.java b/src/test/java/com/podzilla/auth/service/CustomUserDetailsServiceTest.java index b660052..2770033 100644 --- a/src/test/java/com/podzilla/auth/service/CustomUserDetailsServiceTest.java +++ b/src/test/java/com/podzilla/auth/service/CustomUserDetailsServiceTest.java @@ -20,6 +20,7 @@ import java.util.HashSet; import java.util.Optional; import java.util.Set; +import java.util.UUID; import java.util.stream.Collectors; import static org.junit.jupiter.api.Assertions.*; @@ -50,7 +51,7 @@ void setUp() { roles.add(adminRole); user = User.builder() - .id(1L) + .id(UUID.randomUUID()) .name("Test User") .email(userEmail) .password(userPassword) @@ -107,7 +108,7 @@ void loadUserByUsername_shouldThrowValidationException_whenUserHasEmptyRoles() { // Arrange String emailWithNoRoles = "norole@example.com"; User userWithNoRoles = User.builder() - .id(2L) + .id(UUID.randomUUID()) .name("No Role User") .email(emailWithNoRoles) .password("password123") @@ -130,7 +131,7 @@ void loadUserByUsername_shouldThrowValidationException_whenUserHasNullRoles() { // Arrange String emailWithNullRoles = "nullrole@example.com"; User userWithNullRoles = User.builder() - .id(3L) + .id(UUID.randomUUID()) .name("Null Role User") .email(emailWithNullRoles) .password("password456") diff --git a/src/test/java/com/podzilla/auth/service/TokenServiceTest.java b/src/test/java/com/podzilla/auth/service/TokenServiceTest.java index 6879bfd..896db88 100644 --- a/src/test/java/com/podzilla/auth/service/TokenServiceTest.java +++ b/src/test/java/com/podzilla/auth/service/TokenServiceTest.java @@ -20,13 +20,11 @@ import org.mockito.InjectMocks; import org.mockito.Mock; import org.mockito.junit.jupiter.MockitoExtension; -import org.springframework.beans.factory.annotation.Value; import org.springframework.test.util.ReflectionTestUtils; import org.springframework.web.util.WebUtils; import javax.crypto.SecretKey; -import java.nio.charset.StandardCharsets; import java.time.Instant; import java.time.temporal.ChronoUnit; import java.util.Date; @@ -60,7 +58,7 @@ class TokenServiceTest { // Test data private final String testEmail = "test@example.com"; private final String testSecret = "testSecretKeyForJwtTokenGenerationWhichIsVeryLongAndSecure"; // Use a valid Base64 encoded key if possible - private final Long testUserId = 115642L; + private final UUID testUserId = UUID.randomUUID(); private final UUID testRefreshTokenId = UUID.randomUUID(); @BeforeEach From 49b761f9cc3e04bb58a40d5a92d39b28edd511de Mon Sep 17 00:00:00 2001 From: Nour Eldien Ayman Date: Sat, 3 May 2025 19:33:13 +0300 Subject: [PATCH 4/6] Add JsonIgnore annotation to user field in RefreshToken entity --- src/main/java/com/podzilla/auth/model/RefreshToken.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/main/java/com/podzilla/auth/model/RefreshToken.java b/src/main/java/com/podzilla/auth/model/RefreshToken.java index 3405a08..22eb5ce 100644 --- a/src/main/java/com/podzilla/auth/model/RefreshToken.java +++ b/src/main/java/com/podzilla/auth/model/RefreshToken.java @@ -1,5 +1,6 @@ package com.podzilla.auth.model; +import com.fasterxml.jackson.annotation.JsonIgnore; import jakarta.persistence.Entity; import jakarta.persistence.EntityListeners; import jakarta.persistence.Id; @@ -35,6 +36,7 @@ public class RefreshToken { @Column(updatable = false, nullable = false) private UUID id; + @JsonIgnore @ManyToOne(optional = false) @JoinColumn(name = "user_id") private User user; From c52e728b5551999c37b3dbc5c93a6ff90c32e4df Mon Sep 17 00:00:00 2001 From: Nour Eldien Ayman Date: Sat, 3 May 2025 20:32:43 +0300 Subject: [PATCH 5/6] Refactor caching logic in admin and authentication services; introduce CacheService for user details management --- .../java/com/podzilla/auth/model/User.java | 2 + .../security/JWTAuthenticationFilter.java | 11 +++-- .../podzilla/auth/service/AdminService.java | 23 +++------- .../auth/service/AuthenticationService.java | 20 ++++++--- .../podzilla/auth/service/CacheService.java | 43 +++++++++++++++++++ .../service/CustomUserDetailsService.java | 6 --- 6 files changed, 69 insertions(+), 36 deletions(-) create mode 100644 src/main/java/com/podzilla/auth/service/CacheService.java diff --git a/src/main/java/com/podzilla/auth/model/User.java b/src/main/java/com/podzilla/auth/model/User.java index 0acee1e..6b9b230 100644 --- a/src/main/java/com/podzilla/auth/model/User.java +++ b/src/main/java/com/podzilla/auth/model/User.java @@ -23,6 +23,7 @@ import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; +import lombok.Getter; @Entity @Table(name = "users") @@ -30,6 +31,7 @@ @Builder @NoArgsConstructor @AllArgsConstructor +@Getter public class User { @Id @GeneratedValue(strategy = GenerationType.UUID) diff --git a/src/main/java/com/podzilla/auth/security/JWTAuthenticationFilter.java b/src/main/java/com/podzilla/auth/security/JWTAuthenticationFilter.java index 3af4f3b..785fd54 100644 --- a/src/main/java/com/podzilla/auth/security/JWTAuthenticationFilter.java +++ b/src/main/java/com/podzilla/auth/security/JWTAuthenticationFilter.java @@ -1,6 +1,6 @@ package com.podzilla.auth.security; -import com.podzilla.auth.service.CustomUserDetailsService; +import com.podzilla.auth.service.CacheService; import com.podzilla.auth.service.TokenService; import io.micrometer.common.lang.NonNullApi; import jakarta.servlet.FilterChain; @@ -23,13 +23,13 @@ @Component public class JWTAuthenticationFilter extends OncePerRequestFilter { private final TokenService tokenService; - private final CustomUserDetailsService customUserDetailsService; + private final CacheService cacheService; public JWTAuthenticationFilter( final TokenService tokenService, - final CustomUserDetailsService customUserDetailsService) { + final CacheService cacheService) { this.tokenService = tokenService; - this.customUserDetailsService = customUserDetailsService; + this.cacheService = cacheService; } private static final Logger LOGGER = @@ -47,8 +47,7 @@ protected void doFilterInternal(final HttpServletRequest request, String userEmail = tokenService.extractEmail(); UserDetails userDetails = - customUserDetailsService - .loadUserByUsernameCached(userEmail); + cacheService.loadUserByUsername(userEmail); UsernamePasswordAuthenticationToken authToken = new UsernamePasswordAuthenticationToken( diff --git a/src/main/java/com/podzilla/auth/service/AdminService.java b/src/main/java/com/podzilla/auth/service/AdminService.java index b35de9a..3801478 100644 --- a/src/main/java/com/podzilla/auth/service/AdminService.java +++ b/src/main/java/com/podzilla/auth/service/AdminService.java @@ -6,8 +6,6 @@ import com.podzilla.auth.repository.UserRepository; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import org.springframework.cache.annotation.CacheEvict; -import org.springframework.cache.annotation.CachePut; import org.springframework.security.core.GrantedAuthority; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.stereotype.Service; @@ -26,11 +24,14 @@ public class AdminService { private final UserRepository userRepository; private final UserService userService; + private final CacheService cacheService; public AdminService(final UserRepository userRepository, - final UserService userService) { + final UserService userService, + final CacheService cacheService) { this.userRepository = userRepository; this.userService = userService; + this.cacheService = cacheService; } public List getUsers() { @@ -44,7 +45,7 @@ public void updateUserActivation(final UUID userId, LOGGER.debug("Updating isActive status for userId={} " + "from {} to {}", userId, user.getEnabled(), isActive); user.setEnabled(isActive); - updateUserDetailsCache(user); + cacheService.updateUserDetailsCache(user); userRepository.save(user); LOGGER.debug("User activation status updated " + "successfully for userId={}", userId); @@ -55,23 +56,11 @@ public void updateUserActivation(final UUID userId, public void deleteUser(final UUID userId) { User user = userService.getUserOrThrow(userId); LOGGER.debug("Deleting user with userId={}", userId); - evictUserDetailsCache(user); + cacheService.evictUserDetailsCache(user); userRepository.delete(user); LOGGER.debug("User deleted successfully with userId={}", userId); } - @CacheEvict(value = "userDetails", key = "#user.email") - public void evictUserDetailsCache(final User user) { - LOGGER.debug("Evicting user details cache for userId={}", user.getId()); - } - - @CachePut(value = "userDetails", key = "#user.email") - public UserDetails updateUserDetailsCache(final User user) { - LOGGER.debug("Updating user details cache for userId={}", user.getId()); - - return getUserDetails(user); - } - public static UserDetails getUserDetails(final User user) { Set authorities = user .getRoles() diff --git a/src/main/java/com/podzilla/auth/service/AuthenticationService.java b/src/main/java/com/podzilla/auth/service/AuthenticationService.java index d4a4c58..ae40a1e 100644 --- a/src/main/java/com/podzilla/auth/service/AuthenticationService.java +++ b/src/main/java/com/podzilla/auth/service/AuthenticationService.java @@ -48,10 +48,7 @@ public AuthenticationService( public String login(final LoginRequest loginRequest, final HttpServletResponse response) { - if (SecurityContextHolder.getContext().getAuthentication() - instanceof UsernamePasswordAuthenticationToken) { - throw new InvalidActionException("User already logged in."); - } + checkUserLoggedIn("User already logged in."); Authentication authenticationRequest = UsernamePasswordAuthenticationToken. @@ -72,6 +69,8 @@ public String login(final LoginRequest loginRequest, } public void registerAccount(final SignupRequest signupRequest) { + checkUserLoggedIn("User cannot register while logged in."); + checkNotNullValidationException(signupRequest, "Signup request cannot be null."); checkNotNullValidationException(signupRequest.getEmail(), @@ -124,23 +123,30 @@ public String refreshToken(final HttpServletRequest request, } private void checkNotNullValidationException(final String value, - final String message) { + final String message) { if (value == null || value.isEmpty()) { throw new ValidationException(message); } } private void checkNotNullValidationException(final Object value, - final String message) { + final String message) { if (value == null) { throw new ValidationException(message); } } private void checkNotNullAccessDeniedException(final Object value, - final String message) { + final String message) { if (value == null) { throw new AccessDeniedException(message); } } + + private void checkUserLoggedIn(final String message) { + if (SecurityContextHolder.getContext().getAuthentication() + instanceof UsernamePasswordAuthenticationToken) { + throw new InvalidActionException(message); + } + } } diff --git a/src/main/java/com/podzilla/auth/service/CacheService.java b/src/main/java/com/podzilla/auth/service/CacheService.java new file mode 100644 index 0000000..78de728 --- /dev/null +++ b/src/main/java/com/podzilla/auth/service/CacheService.java @@ -0,0 +1,43 @@ +package com.podzilla.auth.service; + +import com.podzilla.auth.model.User; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; +import org.springframework.cache.annotation.CacheEvict; +import org.springframework.cache.annotation.CachePut; +import org.springframework.cache.annotation.Cacheable; +import org.springframework.security.core.userdetails.UserDetails; +import org.springframework.stereotype.Service; + +import static com.podzilla.auth.service.AdminService.getUserDetails; + +@Service +public class CacheService { + + private static final Logger LOGGER = + LoggerFactory.getLogger(CacheService.class); + + private final CustomUserDetailsService customUserDetailsService; + + public CacheService( + final CustomUserDetailsService customUserDetailsService) { + this.customUserDetailsService = customUserDetailsService; + } + + @CacheEvict(value = "userDetails", key = "#user.email") + public void evictUserDetailsCache(final User user) { + LOGGER.debug("Evicting user details cache for userId={}", user.getId()); + } + + @CachePut(value = "userDetails", key = "#user.email") + public UserDetails updateUserDetailsCache(final User user) { + LOGGER.debug("Updating user details cache for userId={}", user.getId()); + + return getUserDetails(user); + } + + @Cacheable(value = "userDetails", key = "#email") + public UserDetails loadUserByUsername(final String email) { + return customUserDetailsService.loadUserByUsername(email); + } +} diff --git a/src/main/java/com/podzilla/auth/service/CustomUserDetailsService.java b/src/main/java/com/podzilla/auth/service/CustomUserDetailsService.java index bc0973a..ea0ab3b 100644 --- a/src/main/java/com/podzilla/auth/service/CustomUserDetailsService.java +++ b/src/main/java/com/podzilla/auth/service/CustomUserDetailsService.java @@ -5,7 +5,6 @@ import com.podzilla.auth.model.User; import com.podzilla.auth.repository.UserRepository; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.cache.annotation.Cacheable; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetailsService; import org.springframework.stereotype.Service; @@ -35,9 +34,4 @@ public UserDetails loadUserByUsername(final String email) { return getUserDetails(user); } - - @Cacheable(value = "userDetails", key = "#email") - public UserDetails loadUserByUsernameCached(final String email) { - return loadUserByUsername(email); - } } From d457b6dcfae33e21cdf87d8f2dc6873f4d841241 Mon Sep 17 00:00:00 2001 From: Nour Eldien Ayman Date: Sat, 3 May 2025 20:36:50 +0300 Subject: [PATCH 6/6] Refactor CacheService methods for user details caching; swap load and evict methods --- .../java/com/podzilla/auth/service/CacheService.java | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/main/java/com/podzilla/auth/service/CacheService.java b/src/main/java/com/podzilla/auth/service/CacheService.java index 78de728..7209e1d 100644 --- a/src/main/java/com/podzilla/auth/service/CacheService.java +++ b/src/main/java/com/podzilla/auth/service/CacheService.java @@ -24,9 +24,9 @@ public CacheService( this.customUserDetailsService = customUserDetailsService; } - @CacheEvict(value = "userDetails", key = "#user.email") - public void evictUserDetailsCache(final User user) { - LOGGER.debug("Evicting user details cache for userId={}", user.getId()); + @Cacheable(value = "userDetails", key = "#email") + public UserDetails loadUserByUsername(final String email) { + return customUserDetailsService.loadUserByUsername(email); } @CachePut(value = "userDetails", key = "#user.email") @@ -36,8 +36,8 @@ public UserDetails updateUserDetailsCache(final User user) { return getUserDetails(user); } - @Cacheable(value = "userDetails", key = "#email") - public UserDetails loadUserByUsername(final String email) { - return customUserDetailsService.loadUserByUsername(email); + @CacheEvict(value = "userDetails", key = "#user.email") + public void evictUserDetailsCache(final User user) { + LOGGER.debug("Evicting user details cache for userId={}", user.getId()); } }