From b16bd384feeb6b0501b30c8ae8cdf1dd6b668a54 Mon Sep 17 00:00:00 2001 From: RALLY Date: Wed, 7 Aug 2024 19:08:33 +0900 Subject: [PATCH] feat: Add Suggest API (#119) --- app.log | 1230 ----------------- .../jjhhyb/deepvalley/image/ImageService.java | 2 + .../jjhhyb/deepvalley/image/ImageType.java | 2 +- .../jjhhyb/deepvalley/suggest/Suggest.java | 47 + .../deepvalley/suggest/SuggestController.java | 51 + .../suggest/SuggestDetailResponse.java | 45 + .../deepvalley/suggest/SuggestImage.java | 29 + .../deepvalley/suggest/SuggestImageId.java | 26 + .../suggest/SuggestImageRepository.java | 11 + .../suggest/SuggestImageService.java | 77 ++ .../suggest/SuggestNotFoundException.java | 7 + .../suggest/SuggestPostRequest.java | 22 + .../deepvalley/suggest/SuggestRepository.java | 16 + .../deepvalley/suggest/SuggestService.java | 214 +++ .../deepvalley/suggest/SuggestsResponse.java | 13 + 15 files changed, 561 insertions(+), 1231 deletions(-) delete mode 100644 app.log create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/Suggest.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestController.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestDetailResponse.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestImage.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestImageId.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestImageRepository.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestImageService.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestNotFoundException.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestPostRequest.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestRepository.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestService.java create mode 100644 src/main/java/jjhhyb/deepvalley/suggest/SuggestsResponse.java diff --git a/app.log b/app.log deleted file mode 100644 index 10e526e..0000000 --- a/app.log +++ /dev/null @@ -1,1230 +0,0 @@ -2024-07-26 16:13:42 INFO j.deepvalley.DeepvalleyApplication - Starting DeepvalleyApplication using Java 17.0.11 with PID 14860 (D:\project\DeepValley\deepvalley-back\build\classes\java\main started by YUN in D:\project\DeepValley\deepvalley-back) -2024-07-26 16:13:42 INFO j.deepvalley.DeepvalleyApplication - The following 2 profiles are active: "prod", "secrets" -2024-07-26 16:13:43 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2024-07-26 16:13:43 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 209 ms. Found 10 JPA repository interfaces. -2024-07-26 16:13:44 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8080 (http) -2024-07-26 16:13:44 INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2024-07-26 16:13:44 INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.25] -2024-07-26 16:13:45 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2024-07-26 16:13:45 INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2889 ms -2024-07-26 16:13:45 DEBUG o.s.w.f.ServerHttpObservationFilter - Filter 'webMvcObservationFilter' configured for use -2024-07-26 16:13:45 DEBUG o.s.web.filter.CorsFilter - Filter 'corsFilter' configured for use -2024-07-26 16:13:45 INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2024-07-26 16:13:45 INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.2.Final -2024-07-26 16:13:45 INFO o.h.s.integration.SpatialService - HHH80000001: hibernate-spatial integration enabled : true -2024-07-26 16:13:45 INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2024-07-26 16:13:45 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2024-07-26 16:13:47 INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@1a4ae53d -2024-07-26 16:13:47 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2024-07-26 16:13:47 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:13:47 INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(12, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@b859355) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1f24e33d) -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-9, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7c3223aa) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7683d632) -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-3, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@513bec8c) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@693ed09d) -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4003, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@4fc8163) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@6c26e588) -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4001, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@62f73b0c) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@7dd2a5f7) -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4002, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@1d45c4b7) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@46146832) -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2004, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1d6014a7) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@7575f7e1) -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2005, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@4626f584) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@2396408a) -2024-07-26 16:13:47 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2011, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@3e4ead73) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@64de9fa4) -2024-07-26 16:13:47 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:13:48 WARN o.h.boot.model.internal.EntityBinder - HHH000457: Joined inheritance hierarchy [jjhhyb.deepvalley.place.Place] defined explicit @DiscriminatorColumn. Legacy Hibernate behavior was to ignore the @DiscriminatorColumn. However, as part of issue HHH-6911 we now apply the explicit @DiscriminatorColumn. If you would prefer the legacy behavior, enable the `hibernate.discriminator.ignore_explicit_for_joined` setting (hibernate.discriminator.ignore_explicit_for_joined=true) -2024-07-26 16:13:48 INFO org.hibernate.spatial - HHH80000004: hibernate-spatial adding function contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:13:49 INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2024-07-26 16:13:49 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 16:13:49 WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reviewController' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\ReviewController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'reviewService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewService.class]: Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'reviewImageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewImageService.class]: Unsatisfied dependency expressed through constructor parameter 2: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed -2024-07-26 16:13:49 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 16:13:49 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2024-07-26 16:13:49 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2024-07-26 16:13:49 INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2024-07-26 16:13:49 INFO o.s.b.a.l.ConditionEvaluationReportLogger - - -Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. -2024-07-26 16:13:49 ERROR o.s.boot.SpringApplication - Application run failed -org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reviewController' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\ReviewController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'reviewService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewService.class]: Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'reviewImageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewImageService.class]: Unsatisfied dependency expressed through constructor parameter 2: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:975) - at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:962) - at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:624) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) - at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754) - at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:335) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1363) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1352) - at jjhhyb.deepvalley.DeepvalleyApplication.main(DeepvalleyApplication.java:11) -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reviewService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewService.class]: Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'reviewImageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewImageService.class]: Unsatisfied dependency expressed through constructor parameter 2: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 19 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reviewImageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewImageService.class]: Unsatisfied dependency expressed through constructor parameter 2: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 33 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 47 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 61 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:514) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1421) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:599) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:409) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1337) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1167) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 75 common frames omitted -Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'cloud.aws.credentials.accessKey' in value "${cloud.aws.credentials.accessKey}" - at org.springframework.util.PropertyPlaceholderHelper.parseStringValue(PropertyPlaceholderHelper.java:180) - at org.springframework.util.PropertyPlaceholderHelper.replacePlaceholders(PropertyPlaceholderHelper.java:126) - at org.springframework.core.env.AbstractPropertyResolver.doResolvePlaceholders(AbstractPropertyResolver.java:239) - at org.springframework.core.env.AbstractPropertyResolver.resolveRequiredPlaceholders(AbstractPropertyResolver.java:210) - at org.springframework.context.support.PropertySourcesPlaceholderConfigurer.lambda$processProperties$0(PropertySourcesPlaceholderConfigurer.java:200) - at org.springframework.beans.factory.support.AbstractBeanFactory.resolveEmbeddedValue(AbstractBeanFactory.java:964) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1374) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:784) - at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:767) - at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:145) - at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:508) - ... 96 common frames omitted -2024-07-26 16:14:11 INFO j.deepvalley.DeepvalleyApplication - Starting DeepvalleyApplication using Java 17.0.11 with PID 29016 (D:\project\DeepValley\deepvalley-back\build\classes\java\main started by YUN in D:\project\DeepValley\deepvalley-back) -2024-07-26 16:14:11 INFO j.deepvalley.DeepvalleyApplication - The following 2 profiles are active: "prod", "secrets" -2024-07-26 16:14:12 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2024-07-26 16:14:13 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 215 ms. Found 10 JPA repository interfaces. -2024-07-26 16:14:13 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8080 (http) -2024-07-26 16:14:13 INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2024-07-26 16:14:13 INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.25] -2024-07-26 16:14:14 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2024-07-26 16:14:14 INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2464 ms -2024-07-26 16:14:14 DEBUG o.s.w.f.ServerHttpObservationFilter - Filter 'webMvcObservationFilter' configured for use -2024-07-26 16:14:14 DEBUG o.s.web.filter.CorsFilter - Filter 'corsFilter' configured for use -2024-07-26 16:14:14 INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2024-07-26 16:14:14 INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.2.Final -2024-07-26 16:14:14 INFO o.h.s.integration.SpatialService - HHH80000001: hibernate-spatial integration enabled : true -2024-07-26 16:14:14 INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2024-07-26 16:14:14 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2024-07-26 16:14:15 INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@682fe17b -2024-07-26 16:14:15 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2024-07-26 16:14:15 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:14:16 INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(12, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1d6014a7) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7575f7e1) -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-9, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@4626f584) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@2396408a) -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-3, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@3e4ead73) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@64de9fa4) -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4003, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@15a5cc6e) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@4a65c40) -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4001, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@4fc84c92) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@5f7bd970) -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4002, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@6406b84d) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@5274acd1) -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2004, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@5fd5d6d1) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@5e643402) -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2005, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@ff12b53) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@78141c58) -2024-07-26 16:14:16 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2011, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@9863ed5) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@763ddfc3) -2024-07-26 16:14:16 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:14:16 WARN o.h.boot.model.internal.EntityBinder - HHH000457: Joined inheritance hierarchy [jjhhyb.deepvalley.place.Place] defined explicit @DiscriminatorColumn. Legacy Hibernate behavior was to ignore the @DiscriminatorColumn. However, as part of issue HHH-6911 we now apply the explicit @DiscriminatorColumn. If you would prefer the legacy behavior, enable the `hibernate.discriminator.ignore_explicit_for_joined` setting (hibernate.discriminator.ignore_explicit_for_joined=true) -2024-07-26 16:14:16 INFO org.hibernate.spatial - HHH80000004: hibernate-spatial adding function contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:14:17 INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2024-07-26 16:14:17 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 16:14:17 WARN o.s.b.w.s.c.AnnotationConfigServletWebServerApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reviewController' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\ReviewController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'reviewService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewService.class]: Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'reviewImageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewImageService.class]: Unsatisfied dependency expressed through constructor parameter 2: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed -2024-07-26 16:14:17 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 16:14:17 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2024-07-26 16:14:17 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2024-07-26 16:14:17 INFO o.a.catalina.core.StandardService - Stopping service [Tomcat] -2024-07-26 16:14:18 INFO o.s.b.a.l.ConditionEvaluationReportLogger - - -Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. -2024-07-26 16:14:18 ERROR o.s.boot.SpringApplication - Application run failed -org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reviewController' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\ReviewController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'reviewService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewService.class]: Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'reviewImageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewImageService.class]: Unsatisfied dependency expressed through constructor parameter 2: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:975) - at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:962) - at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:624) - at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) - at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754) - at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:335) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1363) - at org.springframework.boot.SpringApplication.run(SpringApplication.java:1352) - at jjhhyb.deepvalley.DeepvalleyApplication.main(DeepvalleyApplication.java:11) -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reviewService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewService.class]: Unsatisfied dependency expressed through constructor parameter 1: Error creating bean with name 'reviewImageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewImageService.class]: Unsatisfied dependency expressed through constructor parameter 2: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 19 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'reviewImageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\community\service\ReviewImageService.class]: Unsatisfied dependency expressed through constructor parameter 2: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 33 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'imageService' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\ImageService.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 47 common frames omitted -Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 's3Service' defined in file [D:\project\DeepValley\deepvalley-back\build\classes\java\main\jjhhyb\deepvalley\image\S3Service.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:795) - at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:237) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1357) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1194) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 61 common frames omitted -Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 's3Config': Injection of autowired dependencies failed - at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:514) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1421) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:599) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:409) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1337) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1167) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:562) - at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:522) - at org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0(AbstractBeanFactory.java:337) - at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:234) - at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:335) - at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:200) - at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:254) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1443) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:904) - at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:782) - ... 75 common frames omitted -Caused by: java.lang.IllegalArgumentException: Could not resolve placeholder 'cloud.aws.credentials.accessKey' in value "${cloud.aws.credentials.accessKey}" - at org.springframework.util.PropertyPlaceholderHelper.parseStringValue(PropertyPlaceholderHelper.java:180) - at org.springframework.util.PropertyPlaceholderHelper.replacePlaceholders(PropertyPlaceholderHelper.java:126) - at org.springframework.core.env.AbstractPropertyResolver.doResolvePlaceholders(AbstractPropertyResolver.java:239) - at org.springframework.core.env.AbstractPropertyResolver.resolveRequiredPlaceholders(AbstractPropertyResolver.java:210) - at org.springframework.context.support.PropertySourcesPlaceholderConfigurer.lambda$processProperties$0(PropertySourcesPlaceholderConfigurer.java:200) - at org.springframework.beans.factory.support.AbstractBeanFactory.resolveEmbeddedValue(AbstractBeanFactory.java:964) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1374) - at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1353) - at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.resolveFieldValue(AutowiredAnnotationBeanPostProcessor.java:784) - at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:767) - at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:145) - at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessProperties(AutowiredAnnotationBeanPostProcessor.java:508) - ... 96 common frames omitted -2024-07-26 16:18:01 INFO j.deepvalley.DeepvalleyApplication - Starting DeepvalleyApplication using Java 17.0.11 with PID 41220 (D:\project\DeepValley\deepvalley-back\build\classes\java\main started by YUN in D:\project\DeepValley\deepvalley-back) -2024-07-26 16:18:01 INFO j.deepvalley.DeepvalleyApplication - The following 2 profiles are active: "prod", "secrets" -2024-07-26 16:18:02 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2024-07-26 16:18:02 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 211 ms. Found 10 JPA repository interfaces. -2024-07-26 16:18:03 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8080 (http) -2024-07-26 16:18:03 INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2024-07-26 16:18:03 INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.25] -2024-07-26 16:18:03 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2024-07-26 16:18:03 INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2433 ms -2024-07-26 16:18:03 DEBUG o.s.w.f.ServerHttpObservationFilter - Filter 'webMvcObservationFilter' configured for use -2024-07-26 16:18:03 DEBUG o.s.web.filter.CorsFilter - Filter 'corsFilter' configured for use -2024-07-26 16:18:03 INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2024-07-26 16:18:03 INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.2.Final -2024-07-26 16:18:03 INFO o.h.s.integration.SpatialService - HHH80000001: hibernate-spatial integration enabled : true -2024-07-26 16:18:04 INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2024-07-26 16:18:04 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2024-07-26 16:18:04 INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@63c6c5e5 -2024-07-26 16:18:04 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2024-07-26 16:18:04 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:18:05 INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(12, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@229fe7ab) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@64f2b1b4) -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-9, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@11ad327f) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@4b808427) -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-3, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@167f9043) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@6771fc29) -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4003, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@1f370472) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@50d91a0f) -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4001, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@3ace65df) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@52b6561b) -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4002, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@7505dcab) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@6d94a966) -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2004, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@24bdd996) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@445b4594) -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2005, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1f602930) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@57777c23) -2024-07-26 16:18:05 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2011, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1d4c6e32) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@3a5ffea) -2024-07-26 16:18:05 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:18:05 WARN o.h.boot.model.internal.EntityBinder - HHH000457: Joined inheritance hierarchy [jjhhyb.deepvalley.place.Place] defined explicit @DiscriminatorColumn. Legacy Hibernate behavior was to ignore the @DiscriminatorColumn. However, as part of issue HHH-6911 we now apply the explicit @DiscriminatorColumn. If you would prefer the legacy behavior, enable the `hibernate.discriminator.ignore_explicit_for_joined` setting (hibernate.discriminator.ignore_explicit_for_joined=true) -2024-07-26 16:18:05 INFO org.hibernate.spatial - HHH80000004: hibernate-spatial adding function contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 16:18:06 INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2024-07-26 16:18:06 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 16:18:07 INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. -2024-07-26 16:18:08 WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning -2024-07-26 16:18:08 DEBUG o.s.s.c.a.a.c.AuthenticationConfiguration$DefaultPasswordEncoderAuthenticationManagerBuilder - No authenticationProviders and no parentAuthenticationManager defined. Returning null. -2024-07-26 16:18:08 INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2024-07-26 16:18:08 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - 25 mappings in 'requestMappingHandlerMapping' -2024-07-26 16:18:08 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Patterns [/webjars/**, /**, /swagger-ui*/*swagger-initializer.js, /swagger-ui*/**] in 'resourceHandlerMapping' -2024-07-26 16:18:08 INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 1 endpoint beneath base path '/actuator' -2024-07-26 16:18:09 DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JWTFilter, LoginFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter -2024-07-26 16:18:09 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerAdapter - ControllerAdvice beans: 0 @ModelAttribute, 0 @InitBinder, 1 RequestBodyAdvice, 1 ResponseBodyAdvice -2024-07-26 16:18:09 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - ControllerAdvice beans: 3 @ExceptionHandler, 1 ResponseBodyAdvice -2024-07-26 16:18:09 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8080 (http) with context path '/' -2024-07-26 16:18:09 INFO j.deepvalley.DeepvalleyApplication - Started DeepvalleyApplication in 9.286 seconds (process running for 10.321) -2024-07-26 16:18:10 DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource -2024-07-26 16:18:10 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2024-07-26 16:18:10 INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2024-07-26 16:18:10 DEBUG o.s.web.servlet.DispatcherServlet - Detected StandardServletMultipartResolver -2024-07-26 16:18:10 DEBUG o.s.web.servlet.DispatcherServlet - Detected AcceptHeaderLocaleResolver -2024-07-26 16:18:10 DEBUG o.s.web.servlet.DispatcherServlet - Detected FixedThemeResolver -2024-07-26 16:18:10 DEBUG o.s.web.servlet.DispatcherServlet - Detected org.springframework.web.servlet.view.DefaultRequestToViewNameTranslator@2ac58d -2024-07-26 16:18:10 DEBUG o.s.web.servlet.DispatcherServlet - Detected org.springframework.web.servlet.support.SessionFlashMapManager@7c532e54 -2024-07-26 16:18:10 DEBUG o.s.web.servlet.DispatcherServlet - enableLoggingRequestDetails='false': request parameters and headers will be masked to prevent unsafe logging of potentially sensitive data -2024-07-26 16:18:10 INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 3 ms -2024-07-26 16:18:10 DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/index.html -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/index.html -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/index.html", parameters={} -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/swagger-ui.css -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/swagger-ui-bundle.js -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/swagger-initializer.js -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/swagger-ui-standalone-preset.js -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/swagger-ui.css -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/index.css -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/swagger-ui.css", parameters={} -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/swagger-initializer.js -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/swagger-ui-bundle.js -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/swagger-initializer.js", parameters={} -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/swagger-ui-bundle.js", parameters={} -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/index.css -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/swagger-ui-standalone-preset.js -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/swagger-ui-standalone-preset.js", parameters={} -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/index.css", parameters={} -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/swagger-ui-standalone-preset.js -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/swagger-ui-standalone-preset.js -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/swagger-ui-standalone-preset.js", parameters={} -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/swagger-initializer.js -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Securing GET /swagger-ui/swagger-ui-bundle.js -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/swagger-initializer.js -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/swagger-initializer.js", parameters={} -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.security.web.FilterChainProxy - Secured GET /swagger-ui/swagger-ui-bundle.js -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - GET "/swagger-ui/swagger-ui-bundle.js", parameters={} -2024-07-26 16:30:30 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Mapped to ResourceHttpRequestHandler [classpath [META-INF/resources/webjars/]] -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:31 DEBUG o.s.security.web.FilterChainProxy - Securing GET /v3/api-docs/swagger-config -2024-07-26 16:30:31 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:31 DEBUG o.s.security.web.FilterChainProxy - Secured GET /v3/api-docs/swagger-config -2024-07-26 16:30:31 DEBUG o.s.web.servlet.DispatcherServlet - GET "/v3/api-docs/swagger-config", parameters={} -2024-07-26 16:30:31 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to org.springdoc.webmvc.ui.SwaggerConfigResource#openapiJson(HttpServletRequest) -2024-07-26 16:30:31 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Using 'application/json', given [*/*] and supported [application/json] -2024-07-26 16:30:31 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Writing [{configUrl=/v3/api-docs/swagger-config, oauth2RedirectUrl=http://localhost:8080/swagger-ui/oauth2-re (truncated)...] -2024-07-26 16:30:31 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:30:31 DEBUG o.s.security.web.FilterChainProxy - Securing GET /v3/api-docs -2024-07-26 16:30:31 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:30:31 DEBUG o.s.security.web.FilterChainProxy - Secured GET /v3/api-docs -2024-07-26 16:30:31 DEBUG o.s.web.servlet.DispatcherServlet - GET "/v3/api-docs", parameters={} -2024-07-26 16:30:31 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to org.springdoc.webmvc.api.OpenApiWebMvcResource#openapiJson(HttpServletRequest, String, Locale) -2024-07-26 16:30:31 INFO o.s.api.AbstractOpenApiResource - Init duration for springdoc-openapi is: 567 ms -2024-07-26 16:30:31 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Using 'application/json', given [application/json, */*] and supported [application/json] -2024-07-26 16:30:31 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Writing [{123, 34, 111, 112, 101, 110, 97, 112, 105, 34, 58, 34, 51, 46, 48, 46, 49, 34, 44, 34, 105, 110, 10 (truncated)...] -2024-07-26 16:30:31 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:34:30 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/member/login -2024-07-26 16:34:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:34:30 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/member/login -2024-07-26 16:34:30 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/member/login", parameters={} -2024-07-26 16:34:30 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#login(LoginRequestDto) -2024-07-26 16:34:30 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Read "application/json;charset=UTF-8" to [LoginRequestDto(loginEmail=test@test, password=test123456)] -2024-07-26 16:34:30 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? and m1_0.password=? -2024-07-26 16:34:30 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Using @ExceptionHandler jjhhyb.deepvalley.user.exception.GlobalExceptionHandler#handleUserNotFoundException(LoginException) -2024-07-26 16:34:30 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'text/plain', given [*/*] and supported [text/plain, */*, application/json, application/*+json, application/cbor] -2024-07-26 16:34:30 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing ["User not found"] -2024-07-26 16:34:30 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [jjhhyb.deepvalley.user.exception.LoginException$UserNotFoundException: User not found] -2024-07-26 16:34:30 DEBUG o.s.web.servlet.DispatcherServlet - Completed 404 NOT_FOUND -2024-07-26 16:34:42 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/member/register -2024-07-26 16:34:42 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:34:42 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/member/register -2024-07-26 16:34:42 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/member/register", parameters={} -2024-07-26 16:34:42 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#register(RegisterRequestDto) -2024-07-26 16:34:42 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Read "application/json;charset=UTF-8" to [RegisterRequestDto(loginEmail=test@test, name=testman, password=test123456)] -2024-07-26 16:34:42 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 16:34:42 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.name=? -2024-07-26 16:34:42 DEBUG org.hibernate.SQL - insert into member (created_date,description,login_date,login_email,name,password,profile_image_url) values (?,?,?,?,?,?,?) -2024-07-26 16:34:42 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 16:34:42 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [RegisterResponseDto(memberId=13, loginEmail=test@test, name=testman, password=test123456, createdDat (truncated)...] -2024-07-26 16:34:42 DEBUG o.s.web.servlet.DispatcherServlet - Completed 201 CREATED -2024-07-26 16:34:50 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/member/login -2024-07-26 16:34:50 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:34:50 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/member/login -2024-07-26 16:34:50 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/member/login", parameters={} -2024-07-26 16:34:50 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#login(LoginRequestDto) -2024-07-26 16:34:50 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Read "application/json;charset=UTF-8" to [LoginRequestDto(loginEmail=test@test, password=test123456)] -2024-07-26 16:34:50 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? and m1_0.password=? -2024-07-26 16:34:50 DEBUG org.hibernate.SQL - update member set created_date=?,description=?,login_date=?,login_email=?,name=?,password=?,profile_image_url=? where member_id=? -2024-07-26 16:34:50 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 16:34:50 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [LoginResponseDto(accessToken=eyJhbGciOiJIUzI1NiJ9.eyJsb2dpbklkIjoidGVzdEB0ZXN0Iiwicm9sZSI6IlVTRVIiLC (truncated)...] -2024-07-26 16:34:50 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 16:36:20 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:36:20 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:36:20 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:36:20 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:36:20 DEBUG o.s.web.method.HandlerMethod - Could not resolve parameter [0] in public jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse jjhhyb.deepvalley.community.ReviewController.createReview(jjhhyb.deepvalley.community.dto.request.ReviewPostRequest,java.util.List,org.springframework.security.core.Authentication): Content-Type 'application/octet-stream' is not supported -2024-07-26 16:36:20 WARN o.s.w.s.m.s.DefaultHandlerExceptionResolver - Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content-Type 'application/octet-stream' is not supported] -2024-07-26 16:36:20 DEBUG o.s.web.servlet.DispatcherServlet - Completed 415 UNSUPPORTED_MEDIA_TYPE -2024-07-26 16:36:20 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 16:36:20 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:36:20 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 16:36:32 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:36:32 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:36:32 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:36:32 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:36:32 DEBUG o.s.web.method.HandlerMethod - Could not resolve parameter [0] in public jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse jjhhyb.deepvalley.community.ReviewController.createReview(jjhhyb.deepvalley.community.dto.request.ReviewPostRequest,java.util.List,org.springframework.security.core.Authentication): Content-Type 'application/octet-stream' is not supported -2024-07-26 16:36:32 WARN o.s.w.s.m.s.DefaultHandlerExceptionResolver - Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content-Type 'application/octet-stream' is not supported] -2024-07-26 16:36:32 DEBUG o.s.web.servlet.DispatcherServlet - Completed 415 UNSUPPORTED_MEDIA_TYPE -2024-07-26 16:36:32 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 16:36:32 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:36:32 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 16:37:36 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:37:36 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:37:36 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:37:36 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:37:36 DEBUG o.s.web.method.HandlerMethod - Could not resolve parameter [0] in public jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse jjhhyb.deepvalley.community.ReviewController.createReview(jjhhyb.deepvalley.community.dto.request.ReviewPostRequest,java.util.List,org.springframework.security.core.Authentication): Content-Type 'application/octet-stream' is not supported -2024-07-26 16:37:36 WARN o.s.w.s.m.s.DefaultHandlerExceptionResolver - Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content-Type 'application/octet-stream' is not supported] -2024-07-26 16:37:36 DEBUG o.s.web.servlet.DispatcherServlet - Completed 415 UNSUPPORTED_MEDIA_TYPE -2024-07-26 16:37:36 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 16:37:36 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:37:36 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 16:39:55 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:39:55 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:39:55 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:39:55 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:39:55 DEBUG o.s.web.method.HandlerMethod - Could not resolve parameter [0] in public jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse jjhhyb.deepvalley.community.ReviewController.createReview(jjhhyb.deepvalley.community.dto.request.ReviewPostRequest,java.util.List,org.springframework.security.core.Authentication): Content-Type 'application/octet-stream' is not supported -2024-07-26 16:39:55 WARN o.s.w.s.m.s.DefaultHandlerExceptionResolver - Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content-Type 'application/octet-stream' is not supported] -2024-07-26 16:39:55 DEBUG o.s.web.servlet.DispatcherServlet - Completed 415 UNSUPPORTED_MEDIA_TYPE -2024-07-26 16:39:55 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 16:39:55 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:39:55 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 16:41:11 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:41:11 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:41:11 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:41:11 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:41:11 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ReviewPostRequest(title=Review Title!!, rating=FIVE, content=This is review!!!, visitedDate=2024-07- (truncated)...] -2024-07-26 16:41:17 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 16:41:17 DEBUG org.hibernate.SQL - select p1_0.place_id,p1_0.dtype,p1_0.address,p1_0.avg_rating,p1_0.closing_time,p1_0.contact,p1_0.content,p1_0.created_date,p1_0.location,p1_0.name,p1_0.opening_time,p1_0.post_count,p1_0.region,p1_0.thumbnail,p1_0.updated_date,p1_0.uuid,p1_1.type,p1_2.avg_depth,p1_2.max_depth from place p1_0 left join facility p1_1 on p1_0.place_id=p1_1.place_id left join valley p1_2 on p1_0.place_id=p1_2.place_id where p1_0.uuid=? -2024-07-26 16:41:17 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Using @ExceptionHandler jjhhyb.deepvalley.user.exception.GlobalExceptionHandler#handleIllegalArgumentException(IllegalArgumentException) -2024-07-26 16:41:17 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'text/plain', given [*/*] and supported [text/plain, */*, application/json, application/*+json, application/cbor] -2024-07-26 16:41:17 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing ["유효하지 않은 장소 ID입니다."] -2024-07-26 16:41:17 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [java.lang.IllegalArgumentException: 유효하지 않은 장소 ID입니다.] -2024-07-26 16:41:17 DEBUG o.s.web.servlet.DispatcherServlet - Completed 400 BAD_REQUEST -2024-07-26 16:42:22 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:42:22 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:42:22 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:42:22 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:42:22 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ReviewPostRequest(title=Review Ghost, rating=ONE, content=This is Ghost, visitedDate=2024-07-01, pri (truncated)...] -2024-07-26 16:42:25 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 16:42:25 DEBUG org.hibernate.SQL - select p1_0.place_id,p1_0.dtype,p1_0.address,p1_0.avg_rating,p1_0.closing_time,p1_0.contact,p1_0.content,p1_0.created_date,p1_0.location,p1_0.name,p1_0.opening_time,p1_0.post_count,p1_0.region,p1_0.thumbnail,p1_0.updated_date,p1_0.uuid,p1_1.type,p1_2.avg_depth,p1_2.max_depth from place p1_0 left join facility p1_1 on p1_0.place_id=p1_1.place_id left join valley p1_2 on p1_0.place_id=p1_2.place_id where p1_0.uuid=? -2024-07-26 16:42:25 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Using @ExceptionHandler jjhhyb.deepvalley.user.exception.GlobalExceptionHandler#handleIllegalArgumentException(IllegalArgumentException) -2024-07-26 16:42:25 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'text/plain', given [*/*] and supported [text/plain, */*, application/json, application/*+json, application/cbor] -2024-07-26 16:42:25 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing ["유효하지 않은 장소 ID입니다."] -2024-07-26 16:42:25 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [java.lang.IllegalArgumentException: 유효하지 않은 장소 ID입니다.] -2024-07-26 16:42:25 DEBUG o.s.web.servlet.DispatcherServlet - Completed 400 BAD_REQUEST -2024-07-26 16:48:30 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:48:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:48:30 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 16:48:30 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 16:48:30 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:48:30 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 16:50:43 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:50:43 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:50:43 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:50:43 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:50:43 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ReviewPostRequest(title=Review Ghost, rating=ONE, content=This is Ghost, visitedDate=2024-07-01, pri (truncated)...] -2024-07-26 16:50:45 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 16:50:45 DEBUG org.hibernate.SQL - select p1_0.place_id,p1_0.dtype,p1_0.address,p1_0.avg_rating,p1_0.closing_time,p1_0.contact,p1_0.content,p1_0.created_date,p1_0.location,p1_0.name,p1_0.opening_time,p1_0.post_count,p1_0.region,p1_0.thumbnail,p1_0.updated_date,p1_0.uuid,p1_1.type,p1_2.avg_depth,p1_2.max_depth from place p1_0 left join facility p1_1 on p1_0.place_id=p1_1.place_id left join valley p1_2 on p1_0.place_id=p1_2.place_id where p1_0.uuid=? -2024-07-26 16:50:45 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Using @ExceptionHandler jjhhyb.deepvalley.user.exception.GlobalExceptionHandler#handleIllegalArgumentException(IllegalArgumentException) -2024-07-26 16:50:45 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'text/plain', given [*/*] and supported [text/plain, */*, application/json, application/*+json, application/cbor] -2024-07-26 16:50:45 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing ["유효하지 않은 장소 ID입니다."] -2024-07-26 16:50:45 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [java.lang.IllegalArgumentException: 유효하지 않은 장소 ID입니다.] -2024-07-26 16:50:45 DEBUG o.s.web.servlet.DispatcherServlet - Completed 400 BAD_REQUEST -2024-07-26 16:51:32 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:51:32 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:51:32 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:51:32 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:51:32 DEBUG o.s.web.method.HandlerMethod - Could not resolve parameter [0] in public jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse jjhhyb.deepvalley.community.ReviewController.createReview(jjhhyb.deepvalley.community.dto.request.ReviewPostRequest,java.util.List,org.springframework.security.core.Authentication): Content-Type 'application/octet-stream' is not supported -2024-07-26 16:51:32 WARN o.s.w.s.m.s.DefaultHandlerExceptionResolver - Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content-Type 'application/octet-stream' is not supported] -2024-07-26 16:51:32 DEBUG o.s.web.servlet.DispatcherServlet - Completed 415 UNSUPPORTED_MEDIA_TYPE -2024-07-26 16:51:32 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 16:51:32 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:51:32 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 16:52:38 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:52:38 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:52:38 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:52:38 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:52:38 DEBUG o.s.web.method.HandlerMethod - Could not resolve parameter [0] in public jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse jjhhyb.deepvalley.community.ReviewController.createReview(jjhhyb.deepvalley.community.dto.request.ReviewPostRequest,java.util.List,org.springframework.security.core.Authentication): Content-Type 'application/octet-stream' is not supported -2024-07-26 16:52:38 WARN o.s.w.s.m.s.DefaultHandlerExceptionResolver - Resolved [org.springframework.web.HttpMediaTypeNotSupportedException: Content-Type 'application/octet-stream' is not supported] -2024-07-26 16:52:38 DEBUG o.s.web.servlet.DispatcherServlet - Completed 415 UNSUPPORTED_MEDIA_TYPE -2024-07-26 16:52:38 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 16:52:38 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 16:52:38 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 16:53:42 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:53:42 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:53:42 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:53:42 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:53:42 DEBUG o.s.web.method.HandlerMethod - Could not resolve parameter [0] in public jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse jjhhyb.deepvalley.community.ReviewController.createReview(jjhhyb.deepvalley.community.dto.request.ReviewPostRequest,java.util.List,org.springframework.security.core.Authentication): JSON parse error: Unexpected character ('}' (code 125)): was expecting double-quote to start field name -2024-07-26 16:53:42 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Using @ExceptionHandler jjhhyb.deepvalley.user.exception.GlobalExceptionHandler#handleRuntimeException(RuntimeException) -2024-07-26 16:53:42 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'text/plain', given [*/*] and supported [text/plain, */*, application/json, application/*+json, application/cbor] -2024-07-26 16:53:42 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing ["JSON parse error: Unexpected character ('}' (code 125)): was expecting double-quote to start field n (truncated)..."] -2024-07-26 16:53:42 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Unexpected character ('}' (code 125)): was expecting double-quote to start field name] -2024-07-26 16:53:42 DEBUG o.s.web.servlet.DispatcherServlet - Completed 500 INTERNAL_SERVER_ERROR -2024-07-26 16:54:04 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:54:04 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:54:04 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:54:04 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:54:04 DEBUG o.s.web.method.HandlerMethod - Could not resolve parameter [0] in public jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse jjhhyb.deepvalley.community.ReviewController.createReview(jjhhyb.deepvalley.community.dto.request.ReviewPostRequest,java.util.List,org.springframework.security.core.Authentication): JSON parse error: Unexpected character ('}' (code 125)): was expecting double-quote to start field name -2024-07-26 16:54:04 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Using @ExceptionHandler jjhhyb.deepvalley.user.exception.GlobalExceptionHandler#handleRuntimeException(RuntimeException) -2024-07-26 16:54:04 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'text/plain', given [*/*] and supported [text/plain, */*, application/json, application/*+json, application/cbor] -2024-07-26 16:54:04 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing ["JSON parse error: Unexpected character ('}' (code 125)): was expecting double-quote to start field n (truncated)..."] -2024-07-26 16:54:04 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [org.springframework.http.converter.HttpMessageNotReadableException: JSON parse error: Unexpected character ('}' (code 125)): was expecting double-quote to start field name] -2024-07-26 16:54:04 DEBUG o.s.web.servlet.DispatcherServlet - Completed 500 INTERNAL_SERVER_ERROR -2024-07-26 16:54:30 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:54:30 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:54:30 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:54:30 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:54:30 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ReviewPostRequest(title=Review Ghost, rating=ONE, content=This is Ghost, visitedDate=2024-07-01, pri (truncated)...] -2024-07-26 16:54:37 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 16:54:37 DEBUG org.hibernate.SQL - select p1_0.place_id,p1_0.dtype,p1_0.address,p1_0.avg_rating,p1_0.closing_time,p1_0.contact,p1_0.content,p1_0.created_date,p1_0.location,p1_0.name,p1_0.opening_time,p1_0.post_count,p1_0.region,p1_0.thumbnail,p1_0.updated_date,p1_0.uuid,p1_1.type,p1_2.avg_depth,p1_2.max_depth from place p1_0 left join facility p1_1 on p1_0.place_id=p1_1.place_id left join valley p1_2 on p1_0.place_id=p1_2.place_id where p1_0.uuid=? -2024-07-26 16:54:37 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Using @ExceptionHandler jjhhyb.deepvalley.user.exception.GlobalExceptionHandler#handleIllegalArgumentException(IllegalArgumentException) -2024-07-26 16:54:37 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'text/plain', given [*/*] and supported [text/plain, */*, application/json, application/*+json, application/cbor] -2024-07-26 16:54:37 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing ["유효하지 않은 장소 ID입니다."] -2024-07-26 16:54:37 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [java.lang.IllegalArgumentException: 유효하지 않은 장소 ID입니다.] -2024-07-26 16:54:37 DEBUG o.s.web.servlet.DispatcherServlet - Completed 400 BAD_REQUEST -2024-07-26 16:56:08 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 16:56:08 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/review -2024-07-26 16:56:08 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/review", parameters={multipart} -2024-07-26 16:56:08 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.community.ReviewController#createReview(ReviewPostRequest, List, Authentication) -2024-07-26 16:56:08 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ReviewPostRequest(title=Review Ghost, rating=ONE, content=This is Ghost, visitedDate=2024-07-01, pri (truncated)...] -2024-07-26 16:56:19 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 16:56:19 DEBUG org.hibernate.SQL - select p1_0.place_id,p1_0.dtype,p1_0.address,p1_0.avg_rating,p1_0.closing_time,p1_0.contact,p1_0.content,p1_0.created_date,p1_0.location,p1_0.name,p1_0.opening_time,p1_0.post_count,p1_0.region,p1_0.thumbnail,p1_0.updated_date,p1_0.uuid,p1_1.type,p1_2.avg_depth,p1_2.max_depth from place p1_0 left join facility p1_1 on p1_0.place_id=p1_1.place_id left join valley p1_2 on p1_0.place_id=p1_2.place_id where p1_0.uuid=? -2024-07-26 16:56:48 DEBUG org.hibernate.SQL - insert into review (content,created_date,member_id,place_id,privacy,rating,title,updated_date,uuid,visited_date) values (?,?,?,?,?,?,?,?,?,?) -2024-07-26 16:56:54 WARN com.amazonaws.util.Base64 - JAXB is unavailable. Will fallback to SDK implementation which may be less performant.If you are using Java 9+, you will need to include javax.xml.bind:jaxb-api as a dependency. -2024-07-26 16:56:54 DEBUG org.hibernate.SQL - select i1_0.image_id,i1_0.image_url from image i1_0 where i1_0.image_url=? -2024-07-26 16:56:54 DEBUG org.hibernate.SQL - insert into image (image_url) values (?) -2024-07-26 16:56:54 DEBUG org.hibernate.SQL - select t1_0.tag_id,t1_0.name from tag t1_0 where t1_0.name=? -2024-07-26 16:56:54 DEBUG org.hibernate.SQL - select ri1_0.image_id,ri1_0.review_id from review_image ri1_0 where (ri1_0.image_id,ri1_0.review_id) in ((?,?)) -2024-07-26 16:56:55 DEBUG org.hibernate.SQL - select rt1_0.review_id,rt1_0.tag_id from review_tag rt1_0 where (rt1_0.review_id,rt1_0.tag_id) in ((?,?)) -2024-07-26 16:56:55 DEBUG org.hibernate.SQL - insert into review_image (image_id,review_id) values (?,?) -2024-07-26 16:56:55 DEBUG org.hibernate.SQL - insert into review_tag (review_id,tag_id) values (?,?) -2024-07-26 16:56:55 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 16:56:55 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Writing [jjhhyb.deepvalley.community.dto.response.ReviewDetailResponse@1fca906] -2024-07-26 16:56:55 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 17:39:11 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 17:39:11 ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception -io.jsonwebtoken.ExpiredJwtException: JWT expired 261175 milliseconds ago at 2024-07-26T08:34:50.000Z. Current time: 2024-07-26T08:39:11.175Z. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:682) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:362) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:94) - at io.jsonwebtoken.impl.io.AbstractParser.parse(AbstractParser.java:36) - at io.jsonwebtoken.impl.io.AbstractParser.parse(AbstractParser.java:29) - at io.jsonwebtoken.impl.DefaultJwtParser.parseSignedClaims(DefaultJwtParser.java:821) - at jjhhyb.deepvalley.user.jwt.JWTUtil.getClaims(JWTUtil.java:56) - at jjhhyb.deepvalley.user.jwt.JWTUtil.isExpired(JWTUtil.java:39) - at jjhhyb.deepvalley.user.jwt.JWTFilter.doFilterInternal(JWTFilter.java:42) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82) - at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$0(ObservationFilterChainDecorator.java:323) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:224) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191) - at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113) - at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195) - at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113) - at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74) - at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:230) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:107) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) - at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:389) - at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) - at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:904) - at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) - at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) - at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) - at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) - at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) - at java.base/java.lang.Thread.run(Thread.java:840) -2024-07-26 17:39:11 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 17:39:11 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 17:39:11 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 17:39:26 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/review -2024-07-26 17:39:26 ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception -io.jsonwebtoken.ExpiredJwtException: JWT expired 276438 milliseconds ago at 2024-07-26T08:34:50.000Z. Current time: 2024-07-26T08:39:26.438Z. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:682) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:362) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:94) - at io.jsonwebtoken.impl.io.AbstractParser.parse(AbstractParser.java:36) - at io.jsonwebtoken.impl.io.AbstractParser.parse(AbstractParser.java:29) - at io.jsonwebtoken.impl.DefaultJwtParser.parseSignedClaims(DefaultJwtParser.java:821) - at jjhhyb.deepvalley.user.jwt.JWTUtil.getClaims(JWTUtil.java:56) - at jjhhyb.deepvalley.user.jwt.JWTUtil.isExpired(JWTUtil.java:39) - at jjhhyb.deepvalley.user.jwt.JWTFilter.doFilterInternal(JWTFilter.java:42) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82) - at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$0(ObservationFilterChainDecorator.java:323) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:224) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191) - at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113) - at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195) - at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113) - at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74) - at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:230) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:107) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) - at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:389) - at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) - at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:904) - at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) - at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) - at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) - at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) - at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) - at java.base/java.lang.Thread.run(Thread.java:840) -2024-07-26 17:39:26 DEBUG o.s.security.web.FilterChainProxy - Securing POST /error -2024-07-26 17:39:26 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 17:39:26 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 19:01:28 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 19:01:28 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2024-07-26 19:01:28 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2024-07-26 19:01:37 INFO j.deepvalley.DeepvalleyApplication - Starting DeepvalleyApplication using Java 17.0.11 with PID 17656 (D:\project\DeepValley\deepvalley-back\build\classes\java\main started by YUN in D:\project\DeepValley\deepvalley-back) -2024-07-26 19:01:37 INFO j.deepvalley.DeepvalleyApplication - The following 2 profiles are active: "prod", "secrets" -2024-07-26 19:01:38 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2024-07-26 19:01:38 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 214 ms. Found 10 JPA repository interfaces. -2024-07-26 19:01:39 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8080 (http) -2024-07-26 19:01:39 INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2024-07-26 19:01:39 INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.25] -2024-07-26 19:01:39 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2024-07-26 19:01:39 INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2649 ms -2024-07-26 19:01:40 DEBUG o.s.w.f.ServerHttpObservationFilter - Filter 'webMvcObservationFilter' configured for use -2024-07-26 19:01:40 DEBUG o.s.web.filter.CorsFilter - Filter 'corsFilter' configured for use -2024-07-26 19:01:40 INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2024-07-26 19:01:40 INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.2.Final -2024-07-26 19:01:40 INFO o.h.s.integration.SpatialService - HHH80000001: hibernate-spatial integration enabled : true -2024-07-26 19:01:40 INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2024-07-26 19:01:40 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2024-07-26 19:01:42 INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@3f142e87 -2024-07-26 19:01:42 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2024-07-26 19:01:42 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:01:42 INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(12, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7c013560) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@feab3ae) -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-9, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@229fe7ab) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@64f2b1b4) -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-3, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@11ad327f) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@4b808427) -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4003, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@167f9043) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@6771fc29) -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4001, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@1f370472) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@50d91a0f) -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4002, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@3ace65df) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@52b6561b) -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2004, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7505dcab) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@6d94a966) -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2005, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@24bdd996) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@445b4594) -2024-07-26 19:01:42 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2011, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1f602930) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@57777c23) -2024-07-26 19:01:42 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:01:42 WARN o.h.boot.model.internal.EntityBinder - HHH000457: Joined inheritance hierarchy [jjhhyb.deepvalley.place.Place] defined explicit @DiscriminatorColumn. Legacy Hibernate behavior was to ignore the @DiscriminatorColumn. However, as part of issue HHH-6911 we now apply the explicit @DiscriminatorColumn. If you would prefer the legacy behavior, enable the `hibernate.discriminator.ignore_explicit_for_joined` setting (hibernate.discriminator.ignore_explicit_for_joined=true) -2024-07-26 19:01:43 INFO org.hibernate.spatial - HHH80000004: hibernate-spatial adding function contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:01:44 INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2024-07-26 19:01:44 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 19:01:45 INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. -2024-07-26 19:01:45 WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning -2024-07-26 19:01:45 DEBUG o.s.s.c.a.a.c.AuthenticationConfiguration$DefaultPasswordEncoderAuthenticationManagerBuilder - No authenticationProviders and no parentAuthenticationManager defined. Returning null. -2024-07-26 19:01:45 INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2024-07-26 19:01:46 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - 25 mappings in 'requestMappingHandlerMapping' -2024-07-26 19:01:46 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Patterns [/webjars/**, /**, /swagger-ui*/*swagger-initializer.js, /swagger-ui*/**] in 'resourceHandlerMapping' -2024-07-26 19:01:46 INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 1 endpoint beneath base path '/actuator' -2024-07-26 19:01:46 DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JWTFilter, LoginFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter -2024-07-26 19:01:46 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerAdapter - ControllerAdvice beans: 0 @ModelAttribute, 0 @InitBinder, 1 RequestBodyAdvice, 1 ResponseBodyAdvice -2024-07-26 19:01:46 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - ControllerAdvice beans: 3 @ExceptionHandler, 1 ResponseBodyAdvice -2024-07-26 19:01:47 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8080 (http) with context path '/' -2024-07-26 19:01:47 INFO j.deepvalley.DeepvalleyApplication - Started DeepvalleyApplication in 10.423 seconds (process running for 11.562) -2024-07-26 19:01:47 DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource -2024-07-26 19:01:47 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2024-07-26 19:01:47 INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2024-07-26 19:01:47 DEBUG o.s.web.servlet.DispatcherServlet - Detected StandardServletMultipartResolver -2024-07-26 19:01:47 DEBUG o.s.web.servlet.DispatcherServlet - Detected AcceptHeaderLocaleResolver -2024-07-26 19:01:47 DEBUG o.s.web.servlet.DispatcherServlet - Detected FixedThemeResolver -2024-07-26 19:01:47 DEBUG o.s.web.servlet.DispatcherServlet - Detected org.springframework.web.servlet.view.DefaultRequestToViewNameTranslator@1d8d9807 -2024-07-26 19:01:47 DEBUG o.s.web.servlet.DispatcherServlet - Detected org.springframework.web.servlet.support.SessionFlashMapManager@39a2973d -2024-07-26 19:01:47 DEBUG o.s.web.servlet.DispatcherServlet - enableLoggingRequestDetails='false': request parameters and headers will be masked to prevent unsafe logging of potentially sensitive data -2024-07-26 19:01:47 INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 3 ms -2024-07-26 19:01:47 DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource -2024-07-26 19:18:10 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 19:18:10 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2024-07-26 19:18:11 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2024-07-26 19:18:17 INFO j.deepvalley.DeepvalleyApplication - Starting DeepvalleyApplication using Java 17.0.11 with PID 9312 (D:\project\DeepValley\deepvalley-back\build\classes\java\main started by YUN in D:\project\DeepValley\deepvalley-back) -2024-07-26 19:18:17 INFO j.deepvalley.DeepvalleyApplication - The following 2 profiles are active: "prod", "secrets" -2024-07-26 19:18:19 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2024-07-26 19:18:19 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 224 ms. Found 10 JPA repository interfaces. -2024-07-26 19:18:20 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8080 (http) -2024-07-26 19:18:20 INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2024-07-26 19:18:20 INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.25] -2024-07-26 19:18:20 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2024-07-26 19:18:20 INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2485 ms -2024-07-26 19:18:20 DEBUG o.s.w.f.ServerHttpObservationFilter - Filter 'webMvcObservationFilter' configured for use -2024-07-26 19:18:20 DEBUG o.s.web.filter.CorsFilter - Filter 'corsFilter' configured for use -2024-07-26 19:18:20 INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2024-07-26 19:18:20 INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.2.Final -2024-07-26 19:18:20 INFO o.h.s.integration.SpatialService - HHH80000001: hibernate-spatial integration enabled : true -2024-07-26 19:18:20 INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2024-07-26 19:18:20 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2024-07-26 19:18:21 INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@4eace42b -2024-07-26 19:18:21 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2024-07-26 19:18:21 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:18:22 INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(12, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7dd2a5f7) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1d45c4b7) -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-9, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@46146832) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1d6014a7) -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-3, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@7575f7e1) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@4626f584) -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4003, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@2396408a) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@3e4ead73) -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4001, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@64de9fa4) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@15a5cc6e) -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4002, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@4a65c40) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@4fc84c92) -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2004, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@5f7bd970) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@6406b84d) -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2005, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@5274acd1) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@5fd5d6d1) -2024-07-26 19:18:22 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2011, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@5e643402) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@ff12b53) -2024-07-26 19:18:22 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:18:22 WARN o.h.boot.model.internal.EntityBinder - HHH000457: Joined inheritance hierarchy [jjhhyb.deepvalley.place.Place] defined explicit @DiscriminatorColumn. Legacy Hibernate behavior was to ignore the @DiscriminatorColumn. However, as part of issue HHH-6911 we now apply the explicit @DiscriminatorColumn. If you would prefer the legacy behavior, enable the `hibernate.discriminator.ignore_explicit_for_joined` setting (hibernate.discriminator.ignore_explicit_for_joined=true) -2024-07-26 19:18:22 INFO org.hibernate.spatial - HHH80000004: hibernate-spatial adding function contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:18:23 INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2024-07-26 19:18:23 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 19:18:24 INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. -2024-07-26 19:18:25 WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning -2024-07-26 19:18:25 DEBUG o.s.s.c.a.a.c.AuthenticationConfiguration$DefaultPasswordEncoderAuthenticationManagerBuilder - No authenticationProviders and no parentAuthenticationManager defined. Returning null. -2024-07-26 19:18:25 INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2024-07-26 19:18:25 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - 25 mappings in 'requestMappingHandlerMapping' -2024-07-26 19:18:25 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Patterns [/webjars/**, /**, /swagger-ui*/*swagger-initializer.js, /swagger-ui*/**] in 'resourceHandlerMapping' -2024-07-26 19:18:25 INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 1 endpoint beneath base path '/actuator' -2024-07-26 19:18:25 DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JWTFilter, LoginFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter -2024-07-26 19:18:25 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerAdapter - ControllerAdvice beans: 0 @ModelAttribute, 0 @InitBinder, 1 RequestBodyAdvice, 1 ResponseBodyAdvice -2024-07-26 19:18:25 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - ControllerAdvice beans: 3 @ExceptionHandler, 1 ResponseBodyAdvice -2024-07-26 19:18:26 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8080 (http) with context path '/' -2024-07-26 19:18:26 INFO j.deepvalley.DeepvalleyApplication - Started DeepvalleyApplication in 9.191 seconds (process running for 10.271) -2024-07-26 19:18:26 DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource -2024-07-26 19:18:26 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2024-07-26 19:18:26 INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2024-07-26 19:18:26 DEBUG o.s.web.servlet.DispatcherServlet - Detected StandardServletMultipartResolver -2024-07-26 19:18:26 DEBUG o.s.web.servlet.DispatcherServlet - Detected AcceptHeaderLocaleResolver -2024-07-26 19:18:26 DEBUG o.s.web.servlet.DispatcherServlet - Detected FixedThemeResolver -2024-07-26 19:18:26 DEBUG o.s.web.servlet.DispatcherServlet - Detected org.springframework.web.servlet.view.DefaultRequestToViewNameTranslator@4c00efa -2024-07-26 19:18:26 DEBUG o.s.web.servlet.DispatcherServlet - Detected org.springframework.web.servlet.support.SessionFlashMapManager@3ce524a8 -2024-07-26 19:18:26 DEBUG o.s.web.servlet.DispatcherServlet - enableLoggingRequestDetails='false': request parameters and headers will be masked to prevent unsafe logging of potentially sensitive data -2024-07-26 19:18:26 INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 4 ms -2024-07-26 19:18:26 DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource -2024-07-26 19:27:28 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/member/register -2024-07-26 19:27:28 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 19:27:28 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/member/register -2024-07-26 19:27:28 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/member/register", parameters={} -2024-07-26 19:27:28 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#register(RegisterRequestDto) -2024-07-26 19:27:28 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Read "application/json;charset=UTF-8" to [RegisterRequestDto(loginEmail=test@test, name=testman, password=test123456)] -2024-07-26 19:27:28 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 19:27:28 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.name=? -2024-07-26 19:27:28 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Using @ExceptionHandler jjhhyb.deepvalley.user.exception.GlobalExceptionHandler#handleNicknameAlreadyExistsException(RegisterException) -2024-07-26 19:27:28 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'text/plain', given [*/*] and supported [text/plain, */*, application/json, application/*+json, application/cbor] -2024-07-26 19:27:28 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing ["Name already in use"] -2024-07-26 19:27:28 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - Resolved [jjhhyb.deepvalley.user.exception.RegisterException$NicknameAlreadyExistsException: Name already in use] -2024-07-26 19:27:28 DEBUG o.s.web.servlet.DispatcherServlet - Completed 409 CONFLICT -2024-07-26 19:27:41 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/member/login -2024-07-26 19:27:41 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 19:27:41 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/member/login -2024-07-26 19:27:41 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/member/login", parameters={} -2024-07-26 19:27:41 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#login(LoginRequestDto) -2024-07-26 19:27:41 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Read "application/json;charset=UTF-8" to [LoginRequestDto(loginEmail=test@test, password=test123456)] -2024-07-26 19:27:41 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? and m1_0.password=? -2024-07-26 19:27:41 DEBUG org.hibernate.SQL - update member set created_date=?,description=?,login_date=?,login_email=?,name=?,password=?,profile_image_url=? where member_id=? -2024-07-26 19:27:41 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:27:41 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [LoginResponseDto(accessToken=eyJhbGciOiJIUzI1NiJ9.eyJsb2dpbklkIjoidGVzdEB0ZXN0Iiwicm9sZSI6IlVTRVIiLC (truncated)...] -2024-07-26 19:27:41 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:28:03 DEBUG o.s.security.web.FilterChainProxy - Securing GET /api/member -2024-07-26 19:28:03 DEBUG o.s.security.web.FilterChainProxy - Secured GET /api/member -2024-07-26 19:28:03 DEBUG o.s.web.servlet.DispatcherServlet - GET "/api/member", parameters={} -2024-07-26 19:28:03 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#getMyinfo(Authentication, String) -2024-07-26 19:28:03 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 19:28:04 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:28:04 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [ProfileResponseDto(loginEmail=test@test, name=testman, profileImageUrl=null, description=null, creat (truncated)...] -2024-07-26 19:28:04 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:28:22 DEBUG o.s.security.web.FilterChainProxy - Securing PUT /api/member -2024-07-26 19:28:22 ERROR o.a.c.c.C.[.[.[.[dispatcherServlet] - Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception -io.jsonwebtoken.ExpiredJwtException: JWT expired 936376753 milliseconds ago at 2024-07-15T14:22:06.000Z. Current time: 2024-07-26T10:28:22.753Z. Allowed clock skew: 0 milliseconds. - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:682) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:362) - at io.jsonwebtoken.impl.DefaultJwtParser.parse(DefaultJwtParser.java:94) - at io.jsonwebtoken.impl.io.AbstractParser.parse(AbstractParser.java:36) - at io.jsonwebtoken.impl.io.AbstractParser.parse(AbstractParser.java:29) - at io.jsonwebtoken.impl.DefaultJwtParser.parseSignedClaims(DefaultJwtParser.java:821) - at jjhhyb.deepvalley.user.jwt.JWTUtil.getClaims(JWTUtil.java:56) - at jjhhyb.deepvalley.user.jwt.JWTUtil.isExpired(JWTUtil.java:39) - at jjhhyb.deepvalley.user.jwt.JWTFilter.doFilterInternal(JWTFilter.java:42) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:107) - at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:93) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.web.filter.CorsFilter.doFilterInternal(CorsFilter.java:91) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.header.HeaderWriterFilter.doHeadersAfter(HeaderWriterFilter.java:90) - at org.springframework.security.web.header.HeaderWriterFilter.doFilterInternal(HeaderWriterFilter.java:75) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:82) - at org.springframework.security.web.context.SecurityContextHolderFilter.doFilter(SecurityContextHolderFilter.java:69) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:62) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:227) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.session.DisableEncodeUrlFilter.doFilterInternal(DisableEncodeUrlFilter.java:42) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.wrapFilter(ObservationFilterChainDecorator.java:240) - at org.springframework.security.web.ObservationFilterChainDecorator$AroundFilterObservation$SimpleAroundFilterObservation.lambda$wrap$0(ObservationFilterChainDecorator.java:323) - at org.springframework.security.web.ObservationFilterChainDecorator$ObservationFilter.doFilter(ObservationFilterChainDecorator.java:224) - at org.springframework.security.web.ObservationFilterChainDecorator$VirtualFilterChain.doFilter(ObservationFilterChainDecorator.java:137) - at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:233) - at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:191) - at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113) - at org.springframework.web.servlet.handler.HandlerMappingIntrospector.lambda$createCacheFilter$3(HandlerMappingIntrospector.java:195) - at org.springframework.web.filter.CompositeFilter$VirtualFilterChain.doFilter(CompositeFilter.java:113) - at org.springframework.web.filter.CompositeFilter.doFilter(CompositeFilter.java:74) - at org.springframework.security.config.annotation.web.configuration.WebMvcSecurityConfiguration$CompositeFilterChainProxy.doFilter(WebMvcSecurityConfiguration.java:230) - at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:352) - at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:268) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.RequestContextFilter.doFilterInternal(RequestContextFilter.java:100) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.FormContentFilter.doFilterInternal(FormContentFilter.java:93) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.ServerHttpObservationFilter.doFilterInternal(ServerHttpObservationFilter.java:107) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:201) - at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:116) - at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:164) - at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:140) - at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) - at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) - at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) - at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) - at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) - at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) - at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:344) - at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:389) - at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) - at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:904) - at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1741) - at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) - at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1190) - at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) - at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:63) - at java.base/java.lang.Thread.run(Thread.java:840) -2024-07-26 19:28:22 DEBUG o.s.security.web.FilterChainProxy - Securing PUT /error -2024-07-26 19:28:22 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 19:28:22 DEBUG o.s.s.w.a.Http403ForbiddenEntryPoint - Pre-authenticated entry point called. Rejecting access -2024-07-26 19:28:46 DEBUG o.s.security.web.FilterChainProxy - Securing PUT /api/member -2024-07-26 19:28:46 DEBUG o.s.security.web.FilterChainProxy - Secured PUT /api/member -2024-07-26 19:28:46 DEBUG o.s.web.servlet.DispatcherServlet - PUT "/api/member", parameters={multipart} -2024-07-26 19:28:46 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#updateMember(ProfileRequestDto, MultipartFile, Authentication) -2024-07-26 19:28:46 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ProfileRequestDto(name=John DADADADA, profileImageUrl=null, description=뉴욕의 소프트웨어 엔지니어가 되고 싶어요)] -2024-07-26 19:28:46 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 19:28:46 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.name=? -2024-07-26 19:28:46 WARN com.amazonaws.util.Base64 - JAXB is unavailable. Will fallback to SDK implementation which may be less performant.If you are using Java 9+, you will need to include javax.xml.bind:jaxb-api as a dependency. -2024-07-26 19:28:46 DEBUG org.hibernate.SQL - update member set created_date=?,description=?,login_date=?,login_email=?,name=?,password=?,profile_image_url=? where member_id=? -2024-07-26 19:28:46 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:28:46 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [ProfileResponseDto(loginEmail=test@test, name=John DADADADA, profileImageUrl=null, description=뉴욕의 소 (truncated)...] -2024-07-26 19:28:46 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:29:27 DEBUG o.s.security.web.FilterChainProxy - Securing PUT /api/member -2024-07-26 19:29:27 DEBUG o.s.security.web.FilterChainProxy - Secured PUT /api/member -2024-07-26 19:29:27 DEBUG o.s.web.servlet.DispatcherServlet - PUT "/api/member", parameters={multipart} -2024-07-26 19:29:27 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#updateMember(ProfileRequestDto, MultipartFile, Authentication) -2024-07-26 19:29:27 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ProfileRequestDto(name=John DADADADA, profileImageUrl=null, description=뉴욕의 소프트웨어 엔지니어가 되고 싶어요)] -2024-07-26 19:29:39 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 19:29:39 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.name=? -2024-07-26 19:30:04 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:30:04 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [ProfileResponseDto(loginEmail=test@test, name=John DADADADA, profileImageUrl=null, description=뉴욕의 소 (truncated)...] -2024-07-26 19:30:04 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:30:50 DEBUG o.s.security.web.FilterChainProxy - Securing PUT /api/member -2024-07-26 19:30:50 DEBUG o.s.security.web.FilterChainProxy - Secured PUT /api/member -2024-07-26 19:30:50 DEBUG o.s.web.servlet.DispatcherServlet - PUT "/api/member", parameters={multipart} -2024-07-26 19:30:50 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#updateMember(ProfileRequestDto, MultipartFile, Authentication) -2024-07-26 19:30:50 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ProfileRequestDto(name=John DADADADA, profileImageUrl=null, description=뉴욕의 소프트웨어 엔지니어가 되고 싶어요)] -2024-07-26 19:30:56 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 19:30:56 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.name=? -2024-07-26 19:31:47 WARN com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=1m13s262ms944µs500ns). -2024-07-26 19:47:32 WARN com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=14m27s805ms215µs600ns). -2024-07-26 19:47:32 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:47:32 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [ProfileResponseDto(loginEmail=test@test, name=John DADADADA, profileImageUrl=null, description=뉴욕의 소 (truncated)...] -2024-07-26 19:47:32 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:47:33 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 19:47:33 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2024-07-26 19:47:33 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. -2024-07-26 19:47:40 INFO j.deepvalley.DeepvalleyApplication - Starting DeepvalleyApplication using Java 17.0.11 with PID 20920 (D:\project\DeepValley\deepvalley-back\build\classes\java\main started by YUN in D:\project\DeepValley\deepvalley-back) -2024-07-26 19:47:40 INFO j.deepvalley.DeepvalleyApplication - The following 2 profiles are active: "prod", "secrets" -2024-07-26 19:47:41 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Bootstrapping Spring Data JPA repositories in DEFAULT mode. -2024-07-26 19:47:41 INFO o.s.d.r.c.RepositoryConfigurationDelegate - Finished Spring Data repository scanning in 217 ms. Found 10 JPA repository interfaces. -2024-07-26 19:47:42 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat initialized with port 8080 (http) -2024-07-26 19:47:42 INFO o.a.catalina.core.StandardService - Starting service [Tomcat] -2024-07-26 19:47:42 INFO o.a.catalina.core.StandardEngine - Starting Servlet engine: [Apache Tomcat/10.1.25] -2024-07-26 19:47:43 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring embedded WebApplicationContext -2024-07-26 19:47:43 INFO o.s.b.w.s.c.ServletWebServerApplicationContext - Root WebApplicationContext: initialization completed in 2709 ms -2024-07-26 19:47:43 DEBUG o.s.w.f.ServerHttpObservationFilter - Filter 'webMvcObservationFilter' configured for use -2024-07-26 19:47:43 DEBUG o.s.web.filter.CorsFilter - Filter 'corsFilter' configured for use -2024-07-26 19:47:43 INFO o.h.jpa.internal.util.LogHelper - HHH000204: Processing PersistenceUnitInfo [name: default] -2024-07-26 19:47:43 INFO org.hibernate.Version - HHH000412: Hibernate ORM core version 6.5.2.Final -2024-07-26 19:47:43 INFO o.h.s.integration.SpatialService - HHH80000001: hibernate-spatial integration enabled : true -2024-07-26 19:47:43 INFO o.h.c.i.RegionFactoryInitiator - HHH000026: Second-level cache disabled -2024-07-26 19:47:43 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Starting... -2024-07-26 19:47:44 INFO com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Added connection com.mysql.cj.jdbc.ConnectionImpl@63c6c5e5 -2024-07-26 19:47:44 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Start completed. -2024-07-26 19:47:44 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:47:45 INFO o.s.o.j.p.SpringPersistenceUnitInfo - No LoadTimeWeaver setup: ignoring JPA class transformer -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(12, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@229fe7ab) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@64f2b1b4) -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-9, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@11ad327f) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@4b808427) -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(-3, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@167f9043) replaced previous registration(org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@6771fc29) -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4003, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@1f370472) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@50d91a0f) -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4001, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@3ace65df) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@52b6561b) -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(4002, org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@7505dcab) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@6d94a966) -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2004, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@24bdd996) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@445b4594) -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2005, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1f602930) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@57777c23) -2024-07-26 19:47:45 DEBUG o.h.t.d.sql.spi.DdlTypeRegistry - addDescriptor(2011, org.hibernate.type.descriptor.sql.internal.CapacityDependentDdlType@1d4c6e32) replaced previous registration(org.hibernate.type.descriptor.sql.internal.DdlTypeImpl@3a5ffea) -2024-07-26 19:47:45 INFO org.hibernate.spatial - HHH80000003: hibernate-spatial adding type contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:47:45 WARN o.h.boot.model.internal.EntityBinder - HHH000457: Joined inheritance hierarchy [jjhhyb.deepvalley.place.Place] defined explicit @DiscriminatorColumn. Legacy Hibernate behavior was to ignore the @DiscriminatorColumn. However, as part of issue HHH-6911 we now apply the explicit @DiscriminatorColumn. If you would prefer the legacy behavior, enable the `hibernate.discriminator.ignore_explicit_for_joined` setting (hibernate.discriminator.ignore_explicit_for_joined=true) -2024-07-26 19:47:45 INFO org.hibernate.spatial - HHH80000004: hibernate-spatial adding function contributions from : org.hibernate.spatial.dialect.mysql.MySQLDialectContributor -2024-07-26 19:47:46 INFO o.h.e.t.j.p.i.JtaPlatformInitiator - HHH000489: No JTA platform available (set 'hibernate.transaction.jta.platform' to enable JTA platform integration) -2024-07-26 19:47:46 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Initialized JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 19:47:47 INFO o.s.d.j.r.query.QueryEnhancerFactory - Hibernate is in classpath; If applicable, HQL parser will be used. -2024-07-26 19:47:48 WARN o.s.b.a.o.j.JpaBaseConfiguration$JpaWebConfiguration - spring.jpa.open-in-view is enabled by default. Therefore, database queries may be performed during view rendering. Explicitly configure spring.jpa.open-in-view to disable this warning -2024-07-26 19:47:48 DEBUG o.s.s.c.a.a.c.AuthenticationConfiguration$DefaultPasswordEncoderAuthenticationManagerBuilder - No authenticationProviders and no parentAuthenticationManager defined. Returning null. -2024-07-26 19:47:48 INFO o.s.b.a.w.s.WelcomePageHandlerMapping - Adding welcome page: class path resource [static/index.html] -2024-07-26 19:47:48 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - 25 mappings in 'requestMappingHandlerMapping' -2024-07-26 19:47:48 DEBUG o.s.w.s.h.SimpleUrlHandlerMapping - Patterns [/webjars/**, /**, /swagger-ui*/*swagger-initializer.js, /swagger-ui*/**] in 'resourceHandlerMapping' -2024-07-26 19:47:48 INFO o.s.b.a.e.web.EndpointLinksResolver - Exposing 1 endpoint beneath base path '/actuator' -2024-07-26 19:47:49 DEBUG o.s.s.web.DefaultSecurityFilterChain - Will secure any request with filters: DisableEncodeUrlFilter, WebAsyncManagerIntegrationFilter, SecurityContextHolderFilter, HeaderWriterFilter, CorsFilter, LogoutFilter, JWTFilter, LoginFilter, RequestCacheAwareFilter, SecurityContextHolderAwareRequestFilter, AnonymousAuthenticationFilter, SessionManagementFilter, ExceptionTranslationFilter, AuthorizationFilter -2024-07-26 19:47:49 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerAdapter - ControllerAdvice beans: 0 @ModelAttribute, 0 @InitBinder, 1 RequestBodyAdvice, 1 ResponseBodyAdvice -2024-07-26 19:47:49 DEBUG o.s.w.s.m.m.a.ExceptionHandlerExceptionResolver - ControllerAdvice beans: 3 @ExceptionHandler, 1 ResponseBodyAdvice -2024-07-26 19:47:49 INFO o.s.b.w.e.tomcat.TomcatWebServer - Tomcat started on port 8080 (http) with context path '/' -2024-07-26 19:47:49 INFO j.deepvalley.DeepvalleyApplication - Started DeepvalleyApplication in 10.055 seconds (process running for 11.154) -2024-07-26 19:47:50 DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource -2024-07-26 19:47:50 INFO o.a.c.c.C.[Tomcat].[localhost].[/] - Initializing Spring DispatcherServlet 'dispatcherServlet' -2024-07-26 19:47:50 INFO o.s.web.servlet.DispatcherServlet - Initializing Servlet 'dispatcherServlet' -2024-07-26 19:47:50 DEBUG o.s.web.servlet.DispatcherServlet - Detected StandardServletMultipartResolver -2024-07-26 19:47:50 DEBUG o.s.web.servlet.DispatcherServlet - Detected AcceptHeaderLocaleResolver -2024-07-26 19:47:50 DEBUG o.s.web.servlet.DispatcherServlet - Detected FixedThemeResolver -2024-07-26 19:47:50 DEBUG o.s.web.servlet.DispatcherServlet - Detected org.springframework.web.servlet.view.DefaultRequestToViewNameTranslator@3edb0c1e -2024-07-26 19:47:50 DEBUG o.s.web.servlet.DispatcherServlet - Detected org.springframework.web.servlet.support.SessionFlashMapManager@334f130d -2024-07-26 19:47:50 DEBUG o.s.web.servlet.DispatcherServlet - enableLoggingRequestDetails='false': request parameters and headers will be masked to prevent unsafe logging of potentially sensitive data -2024-07-26 19:47:50 INFO o.s.web.servlet.DispatcherServlet - Completed initialization in 5 ms -2024-07-26 19:47:50 DEBUG o.s.jdbc.datasource.DataSourceUtils - Fetching JDBC Connection from DataSource -2024-07-26 19:47:53 DEBUG o.s.security.web.FilterChainProxy - Securing POST /api/member/login -2024-07-26 19:47:53 DEBUG o.s.s.w.a.AnonymousAuthenticationFilter - Set SecurityContextHolder to anonymous SecurityContext -2024-07-26 19:47:53 DEBUG o.s.security.web.FilterChainProxy - Secured POST /api/member/login -2024-07-26 19:47:53 DEBUG o.s.web.servlet.DispatcherServlet - POST "/api/member/login", parameters={} -2024-07-26 19:47:53 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#login(LoginRequestDto) -2024-07-26 19:47:53 DEBUG o.s.w.s.m.m.a.RequestResponseBodyMethodProcessor - Read "application/json;charset=UTF-8" to [LoginRequestDto(loginEmail=test@test, password=test123456)] -2024-07-26 19:47:53 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? and m1_0.password=? -2024-07-26 19:47:53 DEBUG org.hibernate.SQL - update member set created_date=?,description=?,login_date=?,login_email=?,name=?,password=?,profile_image_url=? where member_id=? -2024-07-26 19:47:53 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:47:53 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [LoginResponseDto(accessToken=eyJhbGciOiJIUzI1NiJ9.eyJsb2dpbklkIjoidGVzdEB0ZXN0Iiwicm9sZSI6IlVTRVIiLC (truncated)...] -2024-07-26 19:47:53 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:48:03 DEBUG o.s.security.web.FilterChainProxy - Securing GET /api/member -2024-07-26 19:48:03 DEBUG o.s.security.web.FilterChainProxy - Secured GET /api/member -2024-07-26 19:48:03 DEBUG o.s.web.servlet.DispatcherServlet - GET "/api/member", parameters={} -2024-07-26 19:48:03 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#getMyinfo(Authentication, String) -2024-07-26 19:48:03 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 19:48:03 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:48:03 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [ProfileResponseDto(loginEmail=test@test, name=John DADADADA, profileImageUrl=null, description=뉴욕의 소 (truncated)...] -2024-07-26 19:48:03 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:49:18 DEBUG o.s.security.web.FilterChainProxy - Securing PUT /api/member -2024-07-26 19:49:18 DEBUG o.s.security.web.FilterChainProxy - Secured PUT /api/member -2024-07-26 19:49:18 DEBUG o.s.web.servlet.DispatcherServlet - PUT "/api/member", parameters={multipart} -2024-07-26 19:49:18 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#updateMember(ProfileRequestDto, MultipartFile, Authentication) -2024-07-26 19:49:18 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ProfileRequestDto(name=밸리맨, profileImageUrl=null, description=계곡러가 될래)] -2024-07-26 19:49:18 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 19:49:18 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.name=? -2024-07-26 19:49:37 WARN com.amazonaws.util.Base64 - JAXB is unavailable. Will fallback to SDK implementation which may be less performant.If you are using Java 9+, you will need to include javax.xml.bind:jaxb-api as a dependency. -2024-07-26 19:49:37 DEBUG org.hibernate.SQL - update member set created_date=?,description=?,login_date=?,login_email=?,name=?,password=?,profile_image_url=? where member_id=? -2024-07-26 19:49:37 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:49:37 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [ProfileResponseDto(loginEmail=test@test, name=밸리맨, profileImageUrl=https://deep-valley-image.s3.ap-n (truncated)...] -2024-07-26 19:49:37 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:51:36 DEBUG o.s.security.web.FilterChainProxy - Securing PUT /api/member -2024-07-26 19:51:36 DEBUG o.s.security.web.FilterChainProxy - Secured PUT /api/member -2024-07-26 19:51:36 DEBUG o.s.web.servlet.DispatcherServlet - PUT "/api/member", parameters={multipart} -2024-07-26 19:51:36 DEBUG o.s.w.s.m.m.a.RequestMappingHandlerMapping - Mapped to jjhhyb.deepvalley.user.controller.MemberController#updateMember(ProfileRequestDto, MultipartFile, Authentication) -2024-07-26 19:51:36 DEBUG o.s.w.s.m.m.a.RequestPartMethodArgumentResolver - Read "application/json" to [ProfileRequestDto(name=밸리맨, profileImageUrl=null, description=계곡러가 될래)] -2024-07-26 19:51:36 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.login_email=? -2024-07-26 19:51:36 DEBUG org.hibernate.SQL - select m1_0.member_id,m1_0.created_date,m1_0.description,m1_0.login_date,m1_0.login_email,m1_0.name,m1_0.password,m1_0.profile_image_url from member m1_0 where m1_0.name=? -2024-07-26 19:52:03 WARN com.zaxxer.hikari.pool.HikariPool - HikariPool-1 - Thread starvation or clock leap detected (housekeeper delta=48s731ms185µs900ns). -2024-07-26 19:52:03 DEBUG org.hibernate.SQL - update member set created_date=?,description=?,login_date=?,login_email=?,name=?,password=?,profile_image_url=? where member_id=? -2024-07-26 19:52:04 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Using 'application/json', given [*/*] and supported [application/json, application/*+json, application/cbor] -2024-07-26 19:52:04 DEBUG o.s.w.s.m.m.a.HttpEntityMethodProcessor - Writing [ProfileResponseDto(loginEmail=test@test, name=밸리맨, profileImageUrl=https://deep-valley-image.s3.ap-n (truncated)...] -2024-07-26 19:52:04 DEBUG o.s.web.servlet.DispatcherServlet - Completed 200 OK -2024-07-26 19:52:43 INFO o.s.o.j.LocalContainerEntityManagerFactoryBean - Closing JPA EntityManagerFactory for persistence unit 'default' -2024-07-26 19:52:43 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown initiated... -2024-07-26 19:52:43 INFO com.zaxxer.hikari.HikariDataSource - HikariPool-1 - Shutdown completed. diff --git a/src/main/java/jjhhyb/deepvalley/image/ImageService.java b/src/main/java/jjhhyb/deepvalley/image/ImageService.java index 0cc5032..06a70e3 100644 --- a/src/main/java/jjhhyb/deepvalley/image/ImageService.java +++ b/src/main/java/jjhhyb/deepvalley/image/ImageService.java @@ -13,6 +13,7 @@ public class ImageService { private final S3Service s3Service; private static final String REVIEW_IMAGE_FOLDER = "review-images"; private static final String PROFILE_IMAGE_FOLDER = "profile-images"; + private static final String SUGGEST_IMAGE_FOLDER = "suggest-images"; // 이미지 파일을 S3에 업로드하고 URL 리스트를 반환 public List uploadImagesAndGetUrls(List imageFiles, ImageType imageType) { @@ -32,6 +33,7 @@ private String getFolderByImageType(ImageType imageType) { return switch (imageType) { case REVIEW -> REVIEW_IMAGE_FOLDER; case PROFILE -> PROFILE_IMAGE_FOLDER; + case SUGGEST -> SUGGEST_IMAGE_FOLDER; }; } } diff --git a/src/main/java/jjhhyb/deepvalley/image/ImageType.java b/src/main/java/jjhhyb/deepvalley/image/ImageType.java index 0fe6ae3..82a3a61 100644 --- a/src/main/java/jjhhyb/deepvalley/image/ImageType.java +++ b/src/main/java/jjhhyb/deepvalley/image/ImageType.java @@ -1,5 +1,5 @@ package jjhhyb.deepvalley.image; public enum ImageType { - REVIEW, PROFILE + REVIEW, PROFILE, SUGGEST } diff --git a/src/main/java/jjhhyb/deepvalley/suggest/Suggest.java b/src/main/java/jjhhyb/deepvalley/suggest/Suggest.java new file mode 100644 index 0000000..07c5232 --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/Suggest.java @@ -0,0 +1,47 @@ +package jjhhyb.deepvalley.suggest; + +import jakarta.persistence.*; +import jjhhyb.deepvalley.place.Place; +import jjhhyb.deepvalley.user.entity.Member; +import lombok.*; +import org.springframework.data.annotation.CreatedDate; +import org.springframework.data.annotation.LastModifiedDate; +import org.springframework.data.jpa.domain.support.AuditingEntityListener; + +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.List; + +@Entity +@Getter @Setter +@NoArgsConstructor @AllArgsConstructor +@EntityListeners(AuditingEntityListener.class) +@Builder +public class Suggest { + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private Long suggestId; + private String uuid; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "member_id") + private Member member; + + @ManyToOne(fetch = FetchType.LAZY) + @JoinColumn(name = "place_id") + private Place place; + + @OneToMany(mappedBy = "suggest", cascade = CascadeType.ALL, orphanRemoval = true) + private List suggestImages = new ArrayList<>(); + + private String title; + private String content; + + @CreatedDate + private LocalDateTime createdDate; + + @LastModifiedDate + private LocalDateTime updatedDate; + + private LocalDateTime visitedDate; +} diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestController.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestController.java new file mode 100644 index 0000000..5953e5e --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestController.java @@ -0,0 +1,51 @@ +package jjhhyb.deepvalley.suggest; + +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.security.core.Authentication; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.util.List; + +@RestController +@RequestMapping("/api/suggest") +public class SuggestController { + @Autowired + private SuggestService suggestService; + + @PostMapping + public SuggestDetailResponse createSuggest( + @RequestPart("suggestPostRequest") SuggestPostRequest suggestPostRequest, + @RequestPart(value = "imageUrls", required = false) List imageFiles, + Authentication auth) { + + return suggestService.createSuggest(suggestPostRequest, imageFiles, auth.getName()); + } + +// 정보변경제안 특성상 수정, 삭제 기능이 필요하지 않음 +// @GetMapping +// public SuggestsResponse getAllSuggests() { +// return suggestService.getSuggests(); +// } +// +// @GetMapping("/{suggest-id}") +// public SuggestDetailResponse getSuggestDetail(@PathVariable("suggest-id") String suggestId) { +// return suggestService.getSuggestDetail(suggestId); +// } +// +// @PutMapping("/{suggest-id}") +// public SuggestDetailResponse updateSuggest( +// @PathVariable("suggest-id") String suggestId, +// @RequestPart("suggestPostRequest") SuggestPostRequest suggestPostRequest, +// @RequestPart(value = "imageUrls", required = false) List imageFiles, +// Authentication auth) { +// +// return suggestService.updateSuggest(suggestId, suggestPostRequest, imageFiles, auth.getName()); +// } +// +// @DeleteMapping("/{suggest-id}") +// public ResponseEntity deleteSuggest(@PathVariable("suggest-id") String suggestId, Authentication auth) { +// suggestService.deleteSuggest(suggestId, auth.getName()); +// return ResponseEntity.noContent().build(); +// } +} \ No newline at end of file diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestDetailResponse.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestDetailResponse.java new file mode 100644 index 0000000..bf36d4e --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestDetailResponse.java @@ -0,0 +1,45 @@ +package jjhhyb.deepvalley.suggest; + +import com.fasterxml.jackson.databind.PropertyNamingStrategies; +import com.fasterxml.jackson.databind.annotation.JsonNaming; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Getter; +import lombok.NoArgsConstructor; + +import java.util.Collections; +import java.util.List; +import java.util.stream.Collectors; + +@Getter +@AllArgsConstructor +@NoArgsConstructor +@Builder +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) +public class SuggestDetailResponse { + private String suggestId; + private String title; + private String content; + private String memberId; + private String placeId; + private String valleyName; + private String createdDate; + private String updatedDate; + private List imageUrls; + + public static SuggestDetailResponse from(Suggest suggest) { + return SuggestDetailResponse.builder() + .suggestId(String.valueOf(suggest.getUuid())) + .title(suggest.getTitle()) + .content(suggest.getContent()) + .memberId(String.valueOf(suggest.getMember().getLoginEmail())) + .placeId(String.valueOf(suggest.getPlace().getUuid())) + .valleyName(suggest.getPlace().getName()) + .createdDate(String.valueOf(suggest.getCreatedDate())) + .updatedDate(String.valueOf(suggest.getUpdatedDate())) + .imageUrls((suggest.getSuggestImages() != null ? suggest.getSuggestImages().stream() + .map(reviewImage -> reviewImage.getImage().getImageUrl()) + .collect(Collectors.toList()) : Collections.emptyList())) + .build(); + } +} diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestImage.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestImage.java new file mode 100644 index 0000000..685d438 --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestImage.java @@ -0,0 +1,29 @@ +package jjhhyb.deepvalley.suggest; + +import jakarta.persistence.*; +import jjhhyb.deepvalley.image.Image; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@NoArgsConstructor +@AllArgsConstructor +@Data +@Entity +@Builder +public class SuggestImage { + + @EmbeddedId + private SuggestImageId id; + + @ManyToOne(fetch = FetchType.LAZY) + @MapsId("suggestId") + @JoinColumn(name = "suggest_id") + private Suggest suggest; + + @ManyToOne(fetch = FetchType.LAZY) + @MapsId("imageId") + @JoinColumn(name = "image_id") + private Image image; +} diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageId.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageId.java new file mode 100644 index 0000000..2e69fc9 --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageId.java @@ -0,0 +1,26 @@ +package jjhhyb.deepvalley.suggest; + +import jakarta.persistence.Column; +import jakarta.persistence.Embeddable; +import lombok.EqualsAndHashCode; +import lombok.Getter; +import lombok.NoArgsConstructor; + +import java.io.Serializable; + +@NoArgsConstructor +@EqualsAndHashCode +@Embeddable +@Getter +public class SuggestImageId implements Serializable { + @Column(name = "SUGGEST_ID") + private Long suggestId; + + @Column(name = "IMAGE_ID") + private Long imageId; + + public SuggestImageId(Long suggestId, Long imageId) { + this.suggestId = suggestId; + this.imageId = imageId; + } +} diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageRepository.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageRepository.java new file mode 100644 index 0000000..dd68113 --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageRepository.java @@ -0,0 +1,11 @@ +package jjhhyb.deepvalley.suggest; + +import org.springframework.data.jpa.repository.JpaRepository; +import org.springframework.stereotype.Repository; + +import java.util.List; + +@Repository +public interface SuggestImageRepository extends JpaRepository { + List findBySuggest_SuggestId(Long suggestId); +} \ No newline at end of file diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageService.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageService.java new file mode 100644 index 0000000..89060d7 --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestImageService.java @@ -0,0 +1,77 @@ +package jjhhyb.deepvalley.suggest; + +import jjhhyb.deepvalley.community.repository.ImageRepository; +import jjhhyb.deepvalley.image.Image; +import jjhhyb.deepvalley.image.ImageService; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.ArrayList; +import java.util.List; +import java.util.Set; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +public class SuggestImageService{ + private final ImageRepository imageRepository; + private final SuggestImageRepository suggestImageRepository; + private final ImageService imageService; + + // 이미지 URL 리스트로 SuggestImage 객체 리스트 생성 + public List processImages(List imageUrls, Suggest suggest) { + return imageUrls.stream() + .map(imageUrl -> createOrUpdateImage(imageUrl, suggest)) + .collect(Collectors.toList()); + } + + // 이미지 URL로 Image 객체 생성 or 업데이트 + private SuggestImage createOrUpdateImage(String imageUrl, Suggest suggest) { + // 데이터베이스에서 이미지 조회, 없으면 새로 생성 + Image image = imageRepository.findByImageUrl(imageUrl); + if (image == null) { + image = imageRepository.save(new Image(imageUrl)); + } + // SuggestImage 객체 생성 + return SuggestImage.builder() + .id(new SuggestImageId(suggest.getSuggestId(), image.getImageId())) + .suggest(suggest) + .image(image) + .build(); + } + + // 제안과 연결된 이미지 업데이트 + public void updateSuggestImages(Suggest suggest, List updatedImages) { + Set updatedImageIds = updatedImages.stream() + .map(suggestImage -> suggestImage.getId().getImageId()) + .collect(Collectors.toSet()); + + // 기존 이미지 리스트와 업데이트된 이미지 IDs를 비교하여 삭제할 이미지들을 결정 + List existingImages = new ArrayList<>(suggest.getSuggestImages()); // 모든 기존 이미지 + List imagesToDelete = existingImages.stream() // 더 이상 사용되지 않는 이미지를 필터링해 포함 + .filter(existingImage -> !updatedImageIds.contains(existingImage.getId().getImageId())) + .toList(); + + // 기존 이미지를 제안과의 연관관계에서 제거 + suggest.getSuggestImages().removeAll(existingImages); + suggestImageRepository.flush(); + + suggest.getSuggestImages().clear(); + suggest.getSuggestImages().addAll(updatedImages); + + // S3에서 이미지 삭제 + imageService.deleteImages(imagesToDelete.stream() + .map(image -> image.getImage().getImageUrl()) + .collect(Collectors.toList())); + // 데이터 베이스에서 삭제 + suggestImageRepository.deleteAll(existingImages); + } + + // 주어진 SuggestImage 리스트의 모든 이미지 삭제 + public void deleteAll(List suggestImages) { + imageService.deleteImages(suggestImages.stream() + .map(image -> image.getImage().getImageUrl()) + .collect(Collectors.toList())); + suggestImageRepository.deleteAll(suggestImages); + } +} \ No newline at end of file diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestNotFoundException.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestNotFoundException.java new file mode 100644 index 0000000..e2581bd --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestNotFoundException.java @@ -0,0 +1,7 @@ +package jjhhyb.deepvalley.suggest; + +public class SuggestNotFoundException extends RuntimeException{ + public SuggestNotFoundException(String message) { + super(message); + } +} diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestPostRequest.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestPostRequest.java new file mode 100644 index 0000000..2bc606d --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestPostRequest.java @@ -0,0 +1,22 @@ +package jjhhyb.deepvalley.suggest; + +import com.fasterxml.jackson.databind.PropertyNamingStrategies; +import com.fasterxml.jackson.databind.annotation.JsonNaming; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +@Data +@Builder +@AllArgsConstructor +@NoArgsConstructor +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) +public class SuggestPostRequest { + private String title; + private String content; + private String placeId; + private List imageUrls; +} \ No newline at end of file diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestRepository.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestRepository.java new file mode 100644 index 0000000..d925ef8 --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestRepository.java @@ -0,0 +1,16 @@ +package jjhhyb.deepvalley.suggest; + +import jjhhyb.deepvalley.user.entity.Member; +import org.springframework.data.jpa.repository.JpaRepository; + +import java.time.LocalDate; +import java.util.List; +import java.util.Optional; + +public interface SuggestRepository extends JpaRepository { + List findAllByPlace_Uuid(String uuid); + List findAllByMember_loginEmail(String uuid); + Optional findByUuid(String uuid); + List findByVisitedDateAfter(LocalDate date); + void deleteByMember(Member member); +} diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestService.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestService.java new file mode 100644 index 0000000..91f1d01 --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestService.java @@ -0,0 +1,214 @@ +package jjhhyb.deepvalley.suggest; + +import jakarta.persistence.EntityNotFoundException; +import jjhhyb.deepvalley.place.Place; +import jjhhyb.deepvalley.place.PlaceRepository; +import jjhhyb.deepvalley.user.entity.Member; +import jjhhyb.deepvalley.user.repository.MemberRepository; +import jjhhyb.deepvalley.image.ImageService; +import jjhhyb.deepvalley.image.ImageType; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.web.multipart.MultipartFile; + +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.time.format.DateTimeParseException; +import java.util.*; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +@Transactional +public class SuggestService { + private final SuggestRepository suggestRepository; + private final SuggestImageService suggestImageService; + private final ImageService imageService; + private final SuggestImageRepository suggestImageRepository; + private final MemberRepository memberRepository; + private final PlaceRepository placeRepository; + + private static final String USER_NOT_FOUND = "사용자를 찾을 수 없습니다."; + private static final String SUGGEST_NOT_FOUND = "제안을 찾을 수 없습니다."; + private static final String INVALID_PLACE_ID = "유효하지 않은 장소 ID입니다."; + private static final String INVALID_DATE_FORMAT = "유효하지 않은 날짜 형식 : "; + private static final String NOT_USER_REVIEW = "사용자가 작성한 리뷰가 아닙니다."; + + @Transactional + public SuggestDetailResponse createSuggest(SuggestPostRequest request, List imageFiles, String userId) { + // userId를 이용하여 Member 엔티티 조회 + Member member = findMemberByUserId(userId); + + // Suggest 엔티티 생성 + Suggest suggest = createSuggestEntity(request, member); + + // 생성한 Suggest 엔티티 데이터베이스에 저장 + Suggest savedSuggest = suggestRepository.save(suggest); + + if (imageFiles != null && !imageFiles.isEmpty()) { + // 이미지 파일 업로드 및 URL 생성 + List imageUrls = imageService.uploadImagesAndGetUrls(imageFiles, ImageType.SUGGEST); + + // 이미지 처리 + List suggestImages = suggestImageService.processImages(imageUrls, savedSuggest); + updateSuggestWithImages(savedSuggest, suggestImages); + } + + // 응답 객체로 변환 후 반환 + return SuggestDetailResponse.from(savedSuggest); + } + + // 제안 업데이트 + @Transactional + public SuggestDetailResponse updateSuggest(String suggestId, SuggestPostRequest request, List imageFiles, String userId) { + // 제안 존재 여부 및 작성자 확인 + Suggest updateSuggest = validateSuggestOwner(suggestId, userId); + + // 기존 제안 이미지 URL 목록 가져오기 + List existingImageUrls = updateSuggest.getSuggestImages().stream() + .map(suggestImage -> suggestImage.getImage().getImageUrl()) + .toList(); + + // 제안 엔티티 업데이트 + updateSuggestEntity(updateSuggest, request); + + if (imageFiles != null && !imageFiles.isEmpty()) { + // 이미지 파일 업로드 및 URL 생성 & 새로운 SuggestImage 객체 생성 + List newImageUrls = imageService.uploadImagesAndGetUrls(imageFiles, ImageType.SUGGEST); + List updatedSuggestImages = suggestImageService.processImages(newImageUrls, updateSuggest); + + // 요청된 이미지 URL을 Set으로 변환하여 기존 이미지와 비교 + Set newImageUrlSet = new HashSet<>(newImageUrls); + + // 삭제할 이미지 결정: 기존 이미지 중 요청된 이미지 URL에 없는 이미지 + List imagesToDelete = updateSuggest.getSuggestImages().stream() + .filter(existingSuggestImage -> !newImageUrlSet.contains(existingSuggestImage.getImage().getImageUrl())) + .collect(Collectors.toList()); + + // 기존 이미지 삭제 + if (!imagesToDelete.isEmpty()) { + suggestImageService.deleteAll(imagesToDelete); + } + + // 새 이미지 추가 + suggestImageService.updateSuggestImages(updateSuggest, updatedSuggestImages); + } else { + // 이미지 파일이 없는 경우: 기존 이미지가 있다면 삭제 처리 + if (!existingImageUrls.isEmpty()) { + List imagesToDelete = updateSuggest.getSuggestImages(); + if (!imagesToDelete.isEmpty()) { + suggestImageService.deleteAll(imagesToDelete); + } + } + } + + // 업데이트된 제안 저장 + suggestRepository.save(updateSuggest); + + return SuggestDetailResponse.from(updateSuggest); + } + + @Transactional + public void deleteSuggest(String suggestId, String userId) { + // 제안 존재 여부 및 작성자 확인 + Suggest suggest = validateSuggestOwner(suggestId, userId); + + // 제안과 연관된 모든 이미지 삭제 + List suggestImages = suggestImageRepository.findBySuggest_SuggestId(suggest.getSuggestId()); + suggestImageService.deleteAll(suggestImages); + + // 제안 삭제 + suggestRepository.delete(suggest); + } + + @Transactional(readOnly = true) + public SuggestsResponse getSuggests() { + // 데이터베이스에서 모든 제안 목록을 조회 + List suggests = suggestRepository.findAll(); + + // Suggest 엔터티를 SuggestResponse로 변환 + List suggestDetailResponses = suggests.stream() + .map(SuggestDetailResponse::from) + .collect(Collectors.toList()); + + // SuggestsResponse 객체에 변환된 제안 목록을 설정 + SuggestsResponse suggestsResponse = new SuggestsResponse(); + suggestsResponse.setSuggests(suggestDetailResponses); + + return suggestsResponse; + } + + @Transactional(readOnly = true) + public SuggestDetailResponse getSuggestDetail(String suggestId) { + // 제안이 존재하지 않으면 예외 처리 + Suggest suggest = suggestRepository.findByUuid(suggestId) + .orElseThrow(() -> new SuggestNotFoundException(SUGGEST_NOT_FOUND)); + + // Suggest 엔터티를 SuggestDetailResponse로 변환 + return SuggestDetailResponse.from(suggest); + } + + // userId를 이용하여 Member 엔티티 조회 + private Member findMemberByUserId(String userId) { + return memberRepository.findByLoginEmail(userId) + .orElseThrow(() -> new IllegalArgumentException(USER_NOT_FOUND)); + } + + // 제안 존재 여부 및 작성자 확인 + private Suggest validateSuggestOwner(String suggestId, String userId) { + // 제안 존재 여부 확인 + Suggest suggest = suggestRepository.findByUuid(suggestId) + .orElseThrow(() -> new EntityNotFoundException(SUGGEST_NOT_FOUND + " with id: " + suggestId)); + // userId를 이용하여 Member 엔티티 조회 + Member member = findMemberByUserId(userId); + // 작성자 검증 + if (!suggest.getMember().getMemberId().equals(member.getMemberId())) { + throw new IllegalArgumentException(NOT_USER_REVIEW); + } + return suggest; + } + + // 제안 엔티티 생성 + private Suggest createSuggestEntity(SuggestPostRequest request, Member member) { + //LocalDate visitedDate = parseVisitedDate(request.getVisitedDate()); + + // Place 엔티티를 ID로 조회 + Place place = placeRepository.findByUuid(request.getPlaceId()) + .orElseThrow(() -> new IllegalArgumentException(INVALID_PLACE_ID)); + + return Suggest.builder() + .uuid(UUID.randomUUID().toString()) + .title(request.getTitle()) + .content(request.getContent()) + .member(member) + .place(place) + .createdDate(LocalDateTime.now()) + .updatedDate(LocalDateTime.now()) + .build(); + } + + // 제안에 이미지 추가 및 업데이트 + private void updateSuggestWithImages(Suggest suggest, List suggestImages) { + suggest.setSuggestImages(suggestImages); + suggestRepository.save(suggest); + suggestImageRepository.saveAll(suggestImages); + } + + private void updateSuggestEntity(Suggest suggest, SuggestPostRequest request) { + suggest.setTitle(request.getTitle()); + suggest.setContent(request.getContent()); + suggest.setUpdatedDate(LocalDateTime.now()); + } + + private LocalDate parseVisitedDate(String visitedDateStr) { + if (visitedDateStr == null || visitedDateStr.isEmpty()) { + return null; + } + try { + return LocalDate.parse(visitedDateStr); + } catch (DateTimeParseException e) { + throw new IllegalArgumentException(INVALID_DATE_FORMAT + visitedDateStr, e); + } + } +} \ No newline at end of file diff --git a/src/main/java/jjhhyb/deepvalley/suggest/SuggestsResponse.java b/src/main/java/jjhhyb/deepvalley/suggest/SuggestsResponse.java new file mode 100644 index 0000000..78dc150 --- /dev/null +++ b/src/main/java/jjhhyb/deepvalley/suggest/SuggestsResponse.java @@ -0,0 +1,13 @@ +package jjhhyb.deepvalley.suggest; + +import com.fasterxml.jackson.databind.PropertyNamingStrategies; +import com.fasterxml.jackson.databind.annotation.JsonNaming; +import lombok.Data; + +import java.util.List; + +@Data +@JsonNaming(PropertyNamingStrategies.SnakeCaseStrategy.class) +public class SuggestsResponse { + private List suggests; +}