MemberService의 메소드를 보면 findMembers와 findOne같은 경우 Repository의 메소드를 (이름만 바꿔주는 식으로?) 한번 더 호출해주는 역할만 하고 join만 중복 회원 검증이라는 추가 적인 일을 하고 있는데요 이렇다면 굳이 Service단을 만들어서 코드를 입력해야하는 이유가 무엇인가요? findMembers가 필요하다면 그냥 findAll을 사용하면 되고, findOne이 필요하다면 findById를 사용하면 되지 않나요? 차라리 save 메소드에 중복회원을 검증하는 로직을 추가하는게 더 효율적이지 않나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. java.lang.NullPointerException: Cannot invoke "hello.hellospring.service.MemberService.join(hello.hellospring.domain.Member)" because "this.memberService" is null 테스트케이스에서 실행했는데 오류가 뜹니다 this.memberService 가 null이라 오류인건 알았는데 왜 그런건가요? 강의코드 복붙해도 그러네요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. @queryprojection 어노테이션이 쿼리 디에스엘에 의존성에 대한 얘기를 해주셨는데요. 레포지토리에서 쓰는 쿼리디에스엘도 같은 의존성 문제가 있는거 아닌가요 ? 극단적인 예로 치명적인 버그로 쿼리디에스엘을 급히 밀어야 되는 문제라던가 다른걸로 대체를 해야 할때 레포지토리에서 사용했던 쿼리펙토리도 모두 바꿔줘야 하는 부분이 아닌가 해서요.
[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
안녕하세요. ref.watch 는 provider 의 현재 값을 subscribing 하고 그 값에 update가 있으면 그것도 subscribe를 하게되어 ui를 새로 rebuild함으로써 바뀐 화면을 보여준다고 이해를 했습니다. 반면 ref.read는 provider의 현재 값을 받아오지만 subscribe는 하지 않는데, 여기서는 shoppingListProvider의 notifier에 access해서 toggleHasBought를 작동시키는 역할을 한다고 이해했습니다. toggleHasBought이 작동함으로써 !hasBought가 된 것을 ref.watch가 스크린에 리빌드 하는 원리라고 생각하면 될까요? 하나 더 궁금한 점은 ref.read (shoppingListProvider.notifier)..... 그리고 이전 챕터 stateProvider 부분에서 모든 ref.read를 ref.watch로 바꾸어도 기존과 똑같이 작동은 하는데 이것은 어떤 원리에 의해서 이렇게 되는 것인지. 겉으로 보이는 것은 같지만 맥락이 어떻게 다른것인지 궁금합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 프로젝션을 보고 있던와중에 궁금증이 생겨서 질문남깁니다. dto로 반환해주고 싶은데 dto가 private final 일 경우 기본 생성자를 만들지 못하는데 이럴땐 final을 풀고 기본생성자를 사용해주는 방법으로 가는게 맞을까요 ? 다른방법이 있으면 추천 부탁드립니다
자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
JdbcTemplate 생성자 만드는데 에러나요. JdbcTemplate 타입의 bean을 찾을 수 없다고 하는데 어떻게 해결해야 하나요? 강의를 더 보니까 19강에서 설명해주고 계신 build.gradle 때문인거 같은데요. 저는 해당 파일이 비활성화 되어 있는 것 같아요. 위 캡쳐처럼 코드가 알록달록(주황, 보라, 노랑..) 하지 않고, 모두 회색으로 보이는데 그래서 일까요?
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요~ 궁금한게 있어 문의 드립니다. 강의랑은 살짝 관련없지만 관련있는 문의 입니다. 혹시 플러터 앱을 제작 후 (쇼핑몰) 웹에서 별도 어드민 페이지를 만들어서 플러터 앱과 json으로 연동하는 방법이 있을까요? 그리고 admin페이지 역시 플로터로 개발하는게 좋을지 아니면 장고나 스프링이나 다른 언어에 프레임워크로 연결이 될런지 궁금해서 문의드립니다!
강사님, 강의 내용에는 코루틴이 없어 학습중에 궁금한 점이 있어서 문의드립니다. 아래 코드의 실행 순서를 제가 정리 해봤습니다. 제가 코루틴의 suspend, resume을 잘 이해한게 맞나 궁금해서요. 물어볼 곳이 없어서, 죄송스럽게도 강사님께 문의를 하게 되었습니다. 강의 내용과는 관련이 없어 답변을 해주시면 감사하겠지만, 답변이 안달리다도 괜찮습니다. 감사합니다. println("Coroutine Outer") 이 실행된다. A 코루틴에서 delay를 만나, B 코루틴으로 실행권을 넘겨간다. B 코루틴도 delay를 만나, A 코루틴으로 실행권을 넘겨준다. 1초가 지나고 A코루틴의 println("Coroutine A, Si")을 실행한다. 반복문에 의하여 A코루틴의 2번째 delay를 만나, 다시 B 코루틴으로 실행권을 넘겨준다. B 코루틴도 1초가 지난 상태여서, 바로 println("Coroutine B, Si")을 실행한다. 반복문에 의하여 B코루틴의 2번째 delay를 만나, 다시 A 코루틴으로 실행권을 넘겨준다. 그 다음 4~7을 반복문이 끝날 때 까지 반복 후 코루틴이 종료된다. fun main() = runBlocking { // A 코루틴 launch { repeat(5) { i -> delay(1000L) println("Coroutine A") } } // B 코루틴 launch { repeat(5) { i -> delay(1000L) println("Coroutine B") } } println("Coroutine Outer") } fun <T> println(msg: T) { kotlin.io.println("$msg [${Thread.currentThread().name}]") }
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
0:08:30 쯤에 설명하신 this 키워드에 관해 질문있습니다. 영상에서 설명하신 내용은 이해가 됐습니다. 제가 영상과는 다르게 객체 내의 name과 members 생성자를 다른 임의의 문자열과 리스트로 정의하고 Idol생성자를 Idol( this.name , this.members); 로 바꾸고 출력해 봤습니다. 이때, Idol 생성자의 변수가 클래스 내의 생성자 갑과는 무관하게 파라미터의 값을 받는것 같습니다. 왜 파라미터안에 this를 선언했음에도 왜 클래스 내의 생성자 값을 받지 않는지 궁금합니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
안녕하세요. 코드팩토리님. flutter 설치 후 에뮬레이터 실행 시 오류가 발생하네요. 강의 그대로 따라한것 같은데 뭐가 잘못된걸 까요. 구글링으로 해결하려했는데 너무 많은 시간을 소비해서 답답한 마음에 글 남겨봅니다. SDK 설치도 강의 내용대로 했던 것 같습니다... 다만 flutter doctor -android -licenses 진행할때 jdk 버전이 안맞아서 java쪽 환경설정 재 설정 해줬구요. 11버전으로 맞춰줬습니다. 혹시 이 문제 때문일까요? 디스크용량이 없으면 에뮬레이터 오류가 난다는데 여유 공간 30GB 있습니다. 아니면 환경변수를 추가로 해줘야하나요? 구글에 찾아보니 ANDROID_AVD_HOME, ANDROID_SDK_HOME 등등 사용자변수쪽에 새로운 폴더 만들고 연결해주라는데... 이것들 다 해봐도 안됩니다... 꼭 좀 도와주세요. 시스템 환경 변수 설정(앞에 경로는 사용자때문에 잘랐습니다) SDK 설치 에뮬레이터 실행 시 오류
안녕하세요 에러 여쭙고자 문의드립니다. Stackoverflow 등을 뒤져도 도저히 답을 구할 수가 없어 문의남깁니다. 현재 flutter 설치받았는데 실행이 안됩니다. 강사님처럼 직접 SDK 다운하여 환경설정도 해보고, homebrew 통해 다운로드 받아보았으나 둘 다 작동하지 않았습니다. 컴퓨터는 맥북 m1 모델입니다. [에러코드] Semantic Issue (Xcode): Function does not return NSString /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:371:51 Semantic Issue (Xcode): Function does not return NSString /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:386:52 Semantic Issue (Xcode): Function does not return string type /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:388:82 Semantic Issue (Xcode): Function does not return string type /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:394:113 Semantic Issue (Xcode): Function does not return string type /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSString.h:395:96 Semantic Issue (Xcode): Function does not return NSString /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSBundle.h:90:142 Parse Issue (Xcode): Expected ')' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/Foundation.framework/Headers/NSURLSession.h:504:185 Parse Issue (Xcode): Could not build module 'Foundation' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/UIKit.framework/Headers/UIKit.h:7:8 Parse Issue (Xcode): Could not build module 'Foundation' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/CoreImage.framework/Headers/CoreImageDefines.h:18:8 Parse Issue (Xcode): Could not build module 'Foundation' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/IOSurface.framework/Headers/IOSurfaceObjC.h:14:8 Parse Issue (Xcode): Could not build module 'IOSurface' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/CoreVideo.framework/Headers/CVPixelBufferIOSurface.h:25:9 Parse Issue (Xcode): Could not build module 'Foundation' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/OpenGLES.framework/Headers/EAGL.h:7:9 Parse Issue (Xcode): Could not build module 'Foundation' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/Metal.framework/Headers/MTLTypes.h:7:8 Parse Issue (Xcode): Could not build module 'Foundation' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/QuartzCore.framework/Headers/CATransform3D.h:11:8 Parse Issue (Xcode): Could not build module 'Foundation' /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator16.2.sdk/System/Library/Frameworks/FileProvider.framework/Headers/NSFileProviderDomain.h:7:8
안녕하세요 강사님 레코드 캡슐화 설명을 들으면서 궁금한 점이 생겨 질문 드립니다. 강의에서, 퍼블릭 필드를 감추는 용도로 퍼블릭 메서드를 사용할 수 있는데, 그 이유로는 퍼블릭 필드(ex, String name) 와 퍼블릭 메서드(ex, String setLastName()) 의 이름이 완전히 동일하다는 보장이 없기 때문입니다. 위 문장을, 퍼블릭 메서드는 퍼블릭 필드를 감추는 용도로 사용할 수 있다고 이해했습니다. 궁금한 점은, 그렇다면 필드를 감추는 것이 중요한 이유는 클라이언트단에서 데이터 클래스의 필드에 무작위적인 접근을 방지하기 위함인가요? 무작위적인 필드의 접근은 데이터를 쉽게 수정할 수 있게 때문이라고 추측했습니다. 감사합니다.
[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!
CustomTextField( label: '내용', isTime: false, onSaved: onSaved, initialValue: initialValue, ), 안녕하세요. 두 가지 질문이 있습니다. 위 위젯을 예시로 onSaved: onSaved 에서 왼쪽은 parameter, 오른쪽은 argument 라고 부르는 것이 맞을까요? 강의의 대부분에서 저렇게 오른쪽의 argument를 따로 빼서 넣어주는 경우 왼쪽의 parameter와 이름이 같게 넣어주시는 경우가 많은데 현업에서는 대부분 이런 식으로 작성하나요? 변수 네이밍이나, 코드 작성은 주관적인 것이지만, 어떤 것이 좋은 코드인지 또 현업에서는 어떻게 쓰는지 궁금합니다.
JPA와 DB 설정, 동작확인의 테스트코드를 실행하는 중 오류가 나서 질문 드립니다. 가끔 jpashop.mv .db를 삭제 후 처음부터 생성을 다시하면 첫 테스트 실행시에는 에러가 나지 않을때가 있으나, 두번째 실행부터는 같은 오류가 다시 반복됩니다. Rollback(false)를 사용하지 않아도 콘솔창에서 롤백한다는 메시지도 나오지 않았습니다. MVCC=true 부분도 삭제해봤고, application.yml이랑 build.gradle도 여러번 확인했습니다. MemberRepository 입니다. Member 클래스 입니다. 오류가 나는 테스트코드 입니다. 처음 생성시 Junit4로 만들었습니다. application.yml 입니다. build.gradle 입니다. h2는 실행중이며, 1.4.200 버전 입니다. 강의자료에서 해당 버전 사용하라고 명시되어 있어 다른 버전으로는 사용해보지 않았습니다. 아래는 오류 전문입니다. Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. 2023-01-25T20:44:53.061+09:00 ERROR 21512 --- [ Test worker] o.s.boot.SpringApplication : Application run failed org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1751 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.doCreateBean( AbstractAutowireCapableBeanFactory.java:599 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.createBean( AbstractAutowireCapableBeanFactory.java:521 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.lambda$doGetBean$0( AbstractBeanFactory.java:326 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .DefaultSingletonBeanRegistry.getSingleton( DefaultSingletonBeanRegistry.java:234 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.doGetBean( AbstractBeanFactory.java:324 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.getBean( AbstractBeanFactory.java:200 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.getBean( AbstractApplicationContext.java:1130 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.finishBeanFactoryInitialization( AbstractApplicationContext.java:905 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.refresh( AbstractApplicationContext.java:584 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.boot.SpringApplication.refresh( SpringApplication.java:730 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.SpringApplication.refreshContext( SpringApplication.java:432 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.SpringApplication.run ( SpringApplication.java:308 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.lambda$loadContext$3( SpringBootContextLoader.java:137 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:59 ) ~[spring-core-6.0.4.jar:6.0.4] at org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:47 ) ~[spring-core-6.0.4.jar:6.0.4] at org.springframework.boot.SpringApplication.withHook( SpringApplication.java:1386 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader$ContextLoaderHook.run( SpringBootContextLoader.java:543 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:137 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:108 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal( DefaultCacheAwareContextLoaderDelegate.java:184 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:118 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.support .DefaultTestContext.getApplicationContext( DefaultTestContext.java:127 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary( ServletTestExecutionListener.java:191 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance( ServletTestExecutionListener.java:130 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.TestContextManager.prepareTestInstance( TestContextManager.java:241 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance( SpringExtension.java:138 ) ~[spring-test-6.0.4.jar:6.0.4] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$10( ClassBasedTestDescriptor.java:377 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable( ClassBasedTestDescriptor.java:382 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$11( ClassBasedTestDescriptor.java:377 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at java.base/java.util.stream.ReferencePipeline$3$1.accept( ReferencePipeline.java:197 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) ~[na:na] at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining( ArrayList.java:1625 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) ~[na:na] at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining( StreamSpliterators.java:310 ) ~[na:na] at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:735 ) ~[na:na] at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:734 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$Head.forEach( ReferencePipeline.java:762 ) ~[na:na] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors( ClassBasedTestDescriptor.java:376 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$6( ClassBasedTestDescriptor.java:289 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance( ClassBasedTestDescriptor.java:288 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$4( ClassBasedTestDescriptor.java:278 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at java.base/java.util.Optional.orElseGet( Optional.java:364 ) ~[na:na] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$5( ClassBasedTestDescriptor.java:277 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances( TestInstancesProvider.java:31 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0( TestMethodTestDescriptor.java:105 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:104 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:68 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$prepare$2( NodeTestTask.java:123 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.prepare( NodeTestTask.java:123 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:90 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) ~[na:na] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) ~[na:na] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.submit( SameThreadHierarchicalTestExecutorService.java:35 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.HierarchicalTestExecutor.execute( HierarchicalTestExecutor.java:57 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.HierarchicalTestEngine.execute( HierarchicalTestEngine.java:54 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:107 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:88 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0( EngineExecutionOrchestrator.java:54 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams( EngineExecutionOrchestrator.java:67 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:52 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:114 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:86 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute( DefaultLauncherSession.java:86 ) ~[na:na] at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute( SessionPerRequestLauncher.java:53 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses( JUnitPlatformTestClassProcessor.java:99 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000( JUnitPlatformTestClassProcessor.java:79 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop( JUnitPlatformTestClassProcessor.java:75 ) ~[na:na] at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop( SuiteTestClassProcessor.java:62 ) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:77 ) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43 ) ~[na:na] at java.base/java.lang.reflect.Method.invoke( Method.java:568 ) ~[na:na] at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:36 ) ~[na:na] at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:24 ) ~[na:na] at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch( ContextClassLoaderDispatch.java:33 ) ~[na:na] at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke( ProxyDispatchAdapter.java:94 ) ~[na:na] at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run( TestWorker.java:193 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName( TestWorker.java:129 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:100 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:60 ) ~[na:na] at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute( ActionExecutionWorker.java:56 ) ~[na:na] at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:113 ) ~[na:na] at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:65 ) ~[na:na] at worker.org.gradle.process.internal.worker.GradleWorkerMain.run ( GradleWorkerMain.java:69 ) ~[gradle-worker.jar:na] at worker.org .gradle.process.internal.worker.GradleWorkerMain.main( GradleWorkerMain.java:74 ) ~[gradle-worker.jar:na] Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:421 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet( AbstractEntityManagerFactoryBean.java:396 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet( LocalContainerEntityManagerFactoryBean.java:352 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1797 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1747 ) ~[spring-beans-6.0.4.jar:6.0.4] ... 108 common frames omitted Caused by: org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.hibernate.id .factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:222 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:515 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:372 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.internal.SessionFactoryImpl.lambda$new$1( SessionFactoryImpl.java:293 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept( ForEachOps.java:183 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) ~[na:na] at java.base/java.util.HashMap$ValueSpliterator.forEachRemaining( HashMap.java:1779 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) ~[na:na] at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential( ForEachOps.java:150 ) ~[na:na] at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential( ForEachOps.java:173 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.evaluate( AbstractPipeline.java:234 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline.forEach( ReferencePipeline.java:596 ) ~[na:na] at org.hibernate.internal.SessionFactoryImpl.<init>( SessionFactoryImpl.java:292 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build ( SessionFactoryBuilderImpl.java:415 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build ( EntityManagerFactoryBuilderImpl.java:1425 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory( SpringHibernateJpaPersistenceProvider.java:66 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory( LocalContainerEntityManagerFactoryBean.java:376 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:409 ) ~[spring-orm-6.0.4.jar:6.0.4] ... 112 common frames omitted Caused by: org.hibernate.HibernateException: Could not fetch the SequenceInformation from the database at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:302 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.getSequenceInformationList( ExtractedDatabaseMetaDataImpl.java:151 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .enhanced.SequenceStyleGenerator.getSequenceIncrementValue( SequenceStyleGenerator.java:561 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .enhanced.SequenceStyleGenerator.configure( SequenceStyleGenerator.java:210 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:217 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] ... 130 common frames omitted Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Column "start_value" not found [42122-214] at org.h2.message.DbException.getJdbcSQLException( DbException.java:502 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.getJdbcSQLException( DbException.java:477 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get( DbException.java:223 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get( DbException.java:199 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.jdbc.JdbcResultSet.getColumnIndex( JdbcResultSet.java:3492 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.jdbc.JdbcResultSet.getLong( JdbcResultSet.java:745 ) ~[h2-2.1.214.jar:2.1.214] at com.zaxxer.hikari.pool.HikariProxyResultSet.getLong( HikariProxyResultSet.java ) ~[HikariCP-5.0.1.jar:na] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.resultSetStartValueSize( SequenceInformationExtractorLegacyImpl.java:110 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.lambda$extractMetadata$0( SequenceInformationExtractorLegacyImpl.java:54 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.spi.ExtractionContext.getQueryResults( ExtractionContext.java:50 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.extractMetadata( SequenceInformationExtractorLegacyImpl.java:39 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:286 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] ... 134 common frames omitted ============================ CONDITIONS EVALUATION REPORT ============================ Positive matches: ----------------- None Negative matches: ----------------- None Exclusions: ----------- None Unconditional classes: ---------------------- None 2023-01-25T20:44:53.094+09:00 ERROR 21512 --- [ Test worker] o.s.test.context.TestContextManager : Caught exception while allowing TestExecutionListener [org.springframework.test.context.web.ServletTestExecutionListener] to prepare test instance [jpabook.jpashop.MemberRepositoryTest@5bd3ca3c] java.lang.IllegalStateException: Failed to load ApplicationContext for [WebMergedContextConfiguration@37f71c05 testClass = jpabook.jpashop.MemberRepositoryTest, locations = [], classes = [jpabook.jpashop.JpashopApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceLocations = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@9da1, org.springframework.boot.test.autoconfigure.properties .PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@1338fb5, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@fade1fc, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7103cb56, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@57ea113a, org.springframework.test.context.web.socket.MockServerContainerContextCustomizer@2072acb2, org.springframework.boot.test.context.SpringBootTestAnnotation@b8b80442], resourceBasePath = "src/main/webapp", contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:142 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.support .DefaultTestContext.getApplicationContext( DefaultTestContext.java:127 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary( ServletTestExecutionListener.java:191 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance( ServletTestExecutionListener.java:130 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.TestContextManager.prepareTestInstance( TestContextManager.java:241 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance( SpringExtension.java:138 ) ~[spring-test-6.0.4.jar:6.0.4] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$10( ClassBasedTestDescriptor.java:377 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable( ClassBasedTestDescriptor.java:382 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$11( ClassBasedTestDescriptor.java:377 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at java.base/java.util.stream.ReferencePipeline$3$1.accept( ReferencePipeline.java:197 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) ~[na:na] at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining( ArrayList.java:1625 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) ~[na:na] at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining( StreamSpliterators.java:310 ) ~[na:na] at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:735 ) ~[na:na] at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:734 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$Head.forEach( ReferencePipeline.java:762 ) ~[na:na] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors( ClassBasedTestDescriptor.java:376 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$6( ClassBasedTestDescriptor.java:289 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance( ClassBasedTestDescriptor.java:288 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$4( ClassBasedTestDescriptor.java:278 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at java.base/java.util.Optional.orElseGet( Optional.java:364 ) ~[na:na] at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$5( ClassBasedTestDescriptor.java:277 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances( TestInstancesProvider.java:31 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0( TestMethodTestDescriptor.java:105 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:104 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:68 ) ~[junit-jupiter-engine-5.9.2.jar:5.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$prepare$2( NodeTestTask.java:123 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.prepare( NodeTestTask.java:123 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:90 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) ~[na:na] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) ~[na:na] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.submit( SameThreadHierarchicalTestExecutorService.java:35 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.HierarchicalTestExecutor.execute( HierarchicalTestExecutor.java:57 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.engine.support .hierarchical.HierarchicalTestEngine.execute( HierarchicalTestEngine.java:54 ) ~[junit-platform-engine-1.9.2.jar:1.9.2] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:107 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:88 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0( EngineExecutionOrchestrator.java:54 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams( EngineExecutionOrchestrator.java:67 ) ~[na:na] at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:52 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:114 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:86 ) ~[na:na] at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute( DefaultLauncherSession.java:86 ) ~[na:na] at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute( SessionPerRequestLauncher.java:53 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses( JUnitPlatformTestClassProcessor.java:99 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000( JUnitPlatformTestClassProcessor.java:79 ) ~[na:na] at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop( JUnitPlatformTestClassProcessor.java:75 ) ~[na:na] at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop( SuiteTestClassProcessor.java:62 ) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na] at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:77 ) ~[na:na] at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43 ) ~[na:na] at java.base/java.lang.reflect.Method.invoke( Method.java:568 ) ~[na:na] at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:36 ) ~[na:na] at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:24 ) ~[na:na] at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch( ContextClassLoaderDispatch.java:33 ) ~[na:na] at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke( ProxyDispatchAdapter.java:94 ) ~[na:na] at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run( TestWorker.java:193 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName( TestWorker.java:129 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:100 ) ~[na:na] at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:60 ) ~[na:na] at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute( ActionExecutionWorker.java:56 ) ~[na:na] at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:113 ) ~[na:na] at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:65 ) ~[na:na] at worker.org.gradle.process.internal.worker.GradleWorkerMain.run ( GradleWorkerMain.java:69 ) ~[gradle-worker.jar:na] at worker.org .gradle.process.internal.worker.GradleWorkerMain.main( GradleWorkerMain.java:74 ) ~[gradle-worker.jar:na] Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1751 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.doCreateBean( AbstractAutowireCapableBeanFactory.java:599 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.createBean( AbstractAutowireCapableBeanFactory.java:521 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.lambda$doGetBean$0( AbstractBeanFactory.java:326 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .DefaultSingletonBeanRegistry.getSingleton( DefaultSingletonBeanRegistry.java:234 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.doGetBean( AbstractBeanFactory.java:324 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractBeanFactory.getBean( AbstractBeanFactory.java:200 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.getBean( AbstractApplicationContext.java:1130 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.finishBeanFactoryInitialization( AbstractApplicationContext.java:905 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.context.support .AbstractApplicationContext.refresh( AbstractApplicationContext.java:584 ) ~[spring-context-6.0.4.jar:6.0.4] at org.springframework.boot.SpringApplication.refresh( SpringApplication.java:730 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.SpringApplication.refreshContext( SpringApplication.java:432 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.SpringApplication.run ( SpringApplication.java:308 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.lambda$loadContext$3( SpringBootContextLoader.java:137 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:59 ) ~[spring-core-6.0.4.jar:6.0.4] at org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:47 ) ~[spring-core-6.0.4.jar:6.0.4] at org.springframework.boot.SpringApplication.withHook( SpringApplication.java:1386 ) ~[spring-boot-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader$ContextLoaderHook.run( SpringBootContextLoader.java:543 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:137 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:108 ) ~[spring-boot-test-3.0.2.jar:3.0.2] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal( DefaultCacheAwareContextLoaderDelegate.java:184 ) ~[spring-test-6.0.4.jar:6.0.4] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:118 ) ~[spring-test-6.0.4.jar:6.0.4] ... 87 common frames omitted Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:421 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet( AbstractEntityManagerFactoryBean.java:396 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet( LocalContainerEntityManagerFactoryBean.java:352 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1797 ) ~[spring-beans-6.0.4.jar:6.0.4] at org.springframework.beans.factory.support .AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1747 ) ~[spring-beans-6.0.4.jar:6.0.4] ... 108 common frames omitted Caused by: org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at org.hibernate.id .factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:222 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:515 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:372 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.internal.SessionFactoryImpl.lambda$new$1( SessionFactoryImpl.java:293 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.accept( ForEachOps.java:183 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) ~[na:na] at java.base/java.util.HashMap$ValueSpliterator.forEachRemaining( HashMap.java:1779 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) ~[na:na] at java.base/java.util.stream.ForEachOps$ForEachOp.evaluateSequential( ForEachOps.java:150 ) ~[na:na] at java.base/java.util.stream.ForEachOps$ForEachOp$OfRef.evaluateSequential( ForEachOps.java:173 ) ~[na:na] at java.base/java.util.stream.AbstractPipeline.evaluate( AbstractPipeline.java:234 ) ~[na:na] at java.base/java.util.stream.ReferencePipeline.forEach( ReferencePipeline.java:596 ) ~[na:na] at org.hibernate.internal.SessionFactoryImpl.<init>( SessionFactoryImpl.java:292 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.boot.internal.SessionFactoryBuilderImpl.build ( SessionFactoryBuilderImpl.java:415 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build ( EntityManagerFactoryBuilderImpl.java:1425 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory( SpringHibernateJpaPersistenceProvider.java:66 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory( LocalContainerEntityManagerFactoryBean.java:376 ) ~[spring-orm-6.0.4.jar:6.0.4] at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:409 ) ~[spring-orm-6.0.4.jar:6.0.4] ... 112 common frames omitted Caused by: org.hibernate.HibernateException: Could not fetch the SequenceInformation from the database at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:302 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.getSequenceInformationList( ExtractedDatabaseMetaDataImpl.java:151 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .enhanced.SequenceStyleGenerator.getSequenceIncrementValue( SequenceStyleGenerator.java:561 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .enhanced.SequenceStyleGenerator.configure( SequenceStyleGenerator.java:210 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.id .factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:217 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] ... 130 common frames omitted Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Column "start_value" not found [42122-214] at org.h2.message.DbException.getJdbcSQLException( DbException.java:502 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.getJdbcSQLException( DbException.java:477 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get( DbException.java:223 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.message.DbException.get( DbException.java:199 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.jdbc.JdbcResultSet.getColumnIndex( JdbcResultSet.java:3492 ) ~[h2-2.1.214.jar:2.1.214] at org.h2.jdbc.JdbcResultSet.getLong( JdbcResultSet.java:745 ) ~[h2-2.1.214.jar:2.1.214] at com.zaxxer.hikari.pool.HikariProxyResultSet.getLong( HikariProxyResultSet.java ) ~[HikariCP-5.0.1.jar:na] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.resultSetStartValueSize( SequenceInformationExtractorLegacyImpl.java:110 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.lambda$extractMetadata$0( SequenceInformationExtractorLegacyImpl.java:54 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.spi.ExtractionContext.getQueryResults( ExtractionContext.java:50 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.extractMetadata( SequenceInformationExtractorLegacyImpl.java:39 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] at org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:286 ) ~[ hibernate-core-6.1.6.Final .jar: 6.1.6.Final ] ... 134 common frames omitted Failed to load ApplicationContext for [WebMergedContextConfiguration@37f71c05 testClass = jpabook.jpashop.MemberRepositoryTest, locations = [], classes = [jpabook.jpashop.JpashopApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceLocations = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@9da1, org.springframework.boot.test.autoconfigure.properties .PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@1338fb5, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@fade1fc, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7103cb56, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@57ea113a, org.springframework.test.context.web.socket.MockServerContainerContextCustomizer@2072acb2, org.springframework.boot.test.context.SpringBootTestAnnotation@b8b80442], resourceBasePath = "src/main/webapp", contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null] java.lang.IllegalStateException: Failed to load ApplicationContext for [WebMergedContextConfiguration@37f71c05 testClass = jpabook.jpashop.MemberRepositoryTest, locations = [], classes = [jpabook.jpashop.JpashopApplication], contextInitializerClasses = [], activeProfiles = [], propertySourceLocations = [], propertySourceProperties = ["org.springframework.boot.test.context.SpringBootTestContextBootstrapper=true"], contextCustomizers = [org.springframework.boot.test.autoconfigure.actuate.observability.ObservabilityContextCustomizerFactory$DisableObservabilityContextCustomizer@9da1, org.springframework.boot.test.autoconfigure.properties .PropertyMappingContextCustomizer@0, org.springframework.boot.test.autoconfigure.web.servlet.WebDriverContextCustomizerFactory$Customizer@1338fb5, org.springframework.boot.test.context.filter.ExcludeFilterContextCustomizer@fade1fc, org.springframework.boot.test.json.DuplicateJsonObjectContextCustomizerFactory$DuplicateJsonObjectContextCustomizer@7103cb56, org.springframework.boot.test.mock.mockito.MockitoContextCustomizer@0, org.springframework.boot.test.web.client.TestRestTemplateContextCustomizer@57ea113a, org.springframework.test.context.web.socket.MockServerContainerContextCustomizer@2072acb2, org.springframework.boot.test.context.SpringBootTestAnnotation@b8b80442], resourceBasePath = "src/main/webapp", contextLoader = org.springframework.boot.test.context.SpringBootContextLoader, parent = null] at org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:142 ) at org.springframework.test.context.support .DefaultTestContext.getApplicationContext( DefaultTestContext.java:127 ) at org.springframework.test.context.web.ServletTestExecutionListener.setUpRequestContextIfNecessary( ServletTestExecutionListener.java:191 ) at org.springframework.test.context.web.ServletTestExecutionListener.prepareTestInstance( ServletTestExecutionListener.java:130 ) at org.springframework.test.context.TestContextManager.prepareTestInstance( TestContextManager.java:241 ) at org.springframework.test.context.junit.jupiter.SpringExtension.postProcessTestInstance( SpringExtension.java:138 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$10( ClassBasedTestDescriptor.java:377 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.executeAndMaskThrowable( ClassBasedTestDescriptor.java:382 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$invokeTestInstancePostProcessors$11( ClassBasedTestDescriptor.java:377 ) at java.base/java.util.stream.ReferencePipeline$3$1.accept( ReferencePipeline.java:197 ) at java.base/java.util.stream.ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining( ArrayList.java:1625 ) at java.base/java.util.stream.AbstractPipeline.copyInto( AbstractPipeline.java:509 ) at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) at java.base/java.util.stream.StreamSpliterators$WrappingSpliterator.forEachRemaining( StreamSpliterators.java:310 ) at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:735 ) at java.base/java.util.stream.Streams$ConcatSpliterator.forEachRemaining( Streams.java:734 ) at java.base/java.util.stream.ReferencePipeline$Head.forEach( ReferencePipeline.java:762 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.invokeTestInstancePostProcessors( ClassBasedTestDescriptor.java:376 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$instantiateAndPostProcessTestInstance$6( ClassBasedTestDescriptor.java:289 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.instantiateAndPostProcessTestInstance( ClassBasedTestDescriptor.java:288 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$4( ClassBasedTestDescriptor.java:278 ) at java.base/java.util.Optional.orElseGet( Optional.java:364 ) at org.junit.jupiter.engine.descriptor.ClassBasedTestDescriptor.lambda$testInstancesProvider$5( ClassBasedTestDescriptor.java:277 ) at org.junit.jupiter.engine.execution.TestInstancesProvider.getTestInstances( TestInstancesProvider.java:31 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.lambda$prepare$0( TestMethodTestDescriptor.java:105 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:104 ) at org.junit.jupiter.engine.descriptor.TestMethodTestDescriptor.prepare( TestMethodTestDescriptor.java:68 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$prepare$2( NodeTestTask.java:123 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.prepare( NodeTestTask.java:123 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:90 ) at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) at java.base/java.util.ArrayList.forEach( ArrayList.java:1511 ) at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.invokeAll( SameThreadHierarchicalTestExecutorService.java:41 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$6( NodeTestTask.java:155 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$8( NodeTestTask.java:141 ) at org.junit.platform.engine.support .hierarchical.Node.around( Node.java:137 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.lambda$executeRecursively$9( NodeTestTask.java:139 ) at org.junit.platform.engine.support .hierarchical.ThrowableCollector.execute( ThrowableCollector.java:73 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.executeRecursively( NodeTestTask.java:138 ) at org.junit.platform.engine.support .hierarchical.NodeTestTask.execute( NodeTestTask.java:95 ) at org.junit.platform.engine.support .hierarchical.SameThreadHierarchicalTestExecutorService.submit( SameThreadHierarchicalTestExecutorService.java:35 ) at org.junit.platform.engine.support .hierarchical.HierarchicalTestExecutor.execute( HierarchicalTestExecutor.java:57 ) at org.junit.platform.engine.support .hierarchical.HierarchicalTestEngine.execute( HierarchicalTestEngine.java:54 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:107 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:88 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.lambda$execute$0( EngineExecutionOrchestrator.java:54 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.withInterceptedStreams( EngineExecutionOrchestrator.java:67 ) at org.junit.platform.launcher.core.EngineExecutionOrchestrator.execute( EngineExecutionOrchestrator.java:52 ) at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:114 ) at org.junit.platform.launcher.core.DefaultLauncher.execute( DefaultLauncher.java:86 ) at org.junit.platform.launcher.core.DefaultLauncherSession$DelegatingLauncher.execute( DefaultLauncherSession.java:86 ) at org.junit.platform.launcher.core.SessionPerRequestLauncher.execute( SessionPerRequestLauncher.java:53 ) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.processAllTestClasses( JUnitPlatformTestClassProcessor.java:99 ) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor$CollectAllTestClassesExecutor.access$000( JUnitPlatformTestClassProcessor.java:79 ) at org.gradle.api.internal.tasks.testing.junitplatform.JUnitPlatformTestClassProcessor.stop( JUnitPlatformTestClassProcessor.java:75 ) at org.gradle.api.internal.tasks.testing.SuiteTestClassProcessor.stop( SuiteTestClassProcessor.java:62 ) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke( NativeMethodAccessorImpl.java:77 ) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke( DelegatingMethodAccessorImpl.java:43 ) at java.base/java.lang.reflect.Method.invoke( Method.java:568 ) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:36 ) at org.gradle.internal.dispatch.ReflectionDispatch.dispatch( ReflectionDispatch.java:24 ) at org.gradle.internal.dispatch.ContextClassLoaderDispatch.dispatch( ContextClassLoaderDispatch.java:33 ) at org.gradle.internal.dispatch.ProxyDispatchAdapter$DispatchingInvocationHandler.invoke( ProxyDispatchAdapter.java:94 ) at jdk.proxy1/jdk.proxy1.$Proxy2.stop(Unknown Source) at org.gradle.api.internal.tasks.testing.worker.TestWorker$3.run( TestWorker.java:193 ) at org.gradle.api.internal.tasks.testing.worker.TestWorker.executeAndMaintainThreadName( TestWorker.java:129 ) at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:100 ) at org.gradle.api.internal.tasks.testing.worker.TestWorker.execute( TestWorker.java:60 ) at org.gradle.process.internal.worker.child.ActionExecutionWorker.execute( ActionExecutionWorker.java:56 ) at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:113 ) at org.gradle.process.internal.worker.child.SystemApplicationClassLoaderWorker.call ( SystemApplicationClassLoaderWorker.java:65 ) at worker.org.gradle.process.internal.worker.GradleWorkerMain.run ( GradleWorkerMain.java:69 ) at worker.org .gradle.process.internal.worker.GradleWorkerMain.main( GradleWorkerMain.java:74 ) Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'entityManagerFactory' defined in class path resource [org/springframework/boot/autoconfigure/orm/jpa/HibernateJpaConfiguration.class]: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1751 ) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean( AbstractAutowireCapableBeanFactory.java:599 ) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean( AbstractAutowireCapableBeanFactory.java:521 ) at app//org.springframework.beans.factory.support.AbstractBeanFactory.lambda$doGetBean$0( AbstractBeanFactory.java:326 ) at app//org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton( DefaultSingletonBeanRegistry.java:234 ) at app//org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean( AbstractBeanFactory.java:324 ) at app//org.springframework.beans.factory.support.AbstractBeanFactory.getBean( AbstractBeanFactory.java:200 ) at app//org.springframework.context.support.AbstractApplicationContext.getBean( AbstractApplicationContext.java:1130 ) at app//org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization( AbstractApplicationContext.java:905 ) at app//org.springframework.context.support.AbstractApplicationContext.refresh( AbstractApplicationContext.java:584 ) at app//org.springframework.boot.SpringApplication.refresh( SpringApplication.java:730 ) at app//org.springframework.boot.SpringApplication.refreshContext( SpringApplication.java:432 ) at app//org.springframework.boot.SpringApplication.run( SpringApplication.java:308 ) at app//org.springframework.boot.test.context.SpringBootContextLoader.lambda$loadContext$3( SpringBootContextLoader.java:137 ) at app//org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:59 ) at app//org.springframework.util.function.ThrowingSupplier.get( ThrowingSupplier.java:47 ) at app//org.springframework.boot.SpringApplication.withHook( SpringApplication.java:1386 ) at app//org.springframework.boot.test.context.SpringBootContextLoader$ContextLoaderHook.run( SpringBootContextLoader.java:543 ) at app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:137 ) at app//org.springframework.boot.test.context.SpringBootContextLoader.loadContext( SpringBootContextLoader.java:108 ) at app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContextInternal( DefaultCacheAwareContextLoaderDelegate.java:184 ) at app//org.springframework.test.context.cache.DefaultCacheAwareContextLoaderDelegate.loadContext( DefaultCacheAwareContextLoaderDelegate.java:118 ) ... 87 more Caused by: jakarta.persistence.PersistenceException: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at app//org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:421 ) at app//org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.afterPropertiesSet( AbstractEntityManagerFactoryBean.java:396 ) at app//org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.afterPropertiesSet( LocalContainerEntityManagerFactoryBean.java:352 ) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods( AbstractAutowireCapableBeanFactory.java:1797 ) at app//org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean( AbstractAutowireCapableBeanFactory.java:1747 ) ... 108 more Caused by: org.hibernate.MappingException: Could not instantiate id generator [entity-name=jpabook.jpashop.Member] at app//org.hibernate.id.factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:222 ) at app//org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:515 ) at app//org.hibernate.mapping.SimpleValue.createIdentifierGenerator( SimpleValue.java:372 ) at app//org.hibernate.internal.SessionFactoryImpl.lambda$new$1( SessionFactoryImpl.java:293 ) at java.base@17.0.2/ java.util.stream .ForEachOps$ForEachOp$OfRef.accept( ForEachOps.java:183 ) at java.base@17.0.2/ java.util.stream .ReferencePipeline$2$1.accept( ReferencePipeline.java:179 ) at java.base@17.0.2/java.util.HashMap$ValueSpliterator.forEachRemaining( HashMap.java:1779 ) at java.base@17.0.2/ java.util.stream .AbstractPipeline.copyInto( AbstractPipeline.java:509 ) at java.base@17.0.2/ java.util.stream .AbstractPipeline.wrapAndCopyInto( AbstractPipeline.java:499 ) at java.base@17.0.2/ java.util.stream .ForEachOps$ForEachOp.evaluateSequential( ForEachOps.java:150 ) at java.base@17.0.2/ java.util.stream .ForEachOps$ForEachOp$OfRef.evaluateSequential( ForEachOps.java:173 ) at java.base@17.0.2/ java.util.stream .AbstractPipeline.evaluate( AbstractPipeline.java:234 ) at java.base@17.0.2/ java.util.stream .ReferencePipeline.forEach( ReferencePipeline.java:596 ) at app//org.hibernate.internal.SessionFactoryImpl.<init>( SessionFactoryImpl.java:292 ) at app//org.hibernate.boot.internal.SessionFactoryBuilderImpl.build( SessionFactoryBuilderImpl.java:415 ) at app//org.hibernate.jpa.boot.internal.EntityManagerFactoryBuilderImpl.build( EntityManagerFactoryBuilderImpl.java:1425 ) at app//org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider.createContainerEntityManagerFactory( SpringHibernateJpaPersistenceProvider.java:66 ) at app//org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean.createNativeEntityManagerFactory( LocalContainerEntityManagerFactoryBean.java:376 ) at app//org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.buildNativeEntityManagerFactory( AbstractEntityManagerFactoryBean.java:409 ) ... 112 more Caused by: org.hibernate.HibernateException: Could not fetch the SequenceInformation from the database at app//org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:302 ) at app//org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.getSequenceInformationList( ExtractedDatabaseMetaDataImpl.java:151 ) at app//org.hibernate.id.enhanced.SequenceStyleGenerator.getSequenceIncrementValue( SequenceStyleGenerator.java:561 ) at app//org.hibernate.id.enhanced.SequenceStyleGenerator.configure( SequenceStyleGenerator.java:210 ) at app//org.hibernate.id.factory.internal.StandardIdentifierGeneratorFactory.createIdentifierGenerator( StandardIdentifierGeneratorFactory.java:217 ) ... 130 more Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException: Column "start_value" not found [42122-214] at app//org.h2.message.DbException.getJdbcSQLException( DbException.java:502 ) at app//org.h2.message.DbException.getJdbcSQLException( DbException.java:477 ) at app//org.h2.message.DbException.get( DbException.java:223 ) at app//org.h2.message.DbException.get( DbException.java:199 ) at app//org.h2.jdbc.JdbcResultSet.getColumnIndex( JdbcResultSet.java:3492 ) at app//org.h2.jdbc.JdbcResultSet.getLong( JdbcResultSet.java:745 ) at app//com.zaxxer.hikari.pool.HikariProxyResultSet.getLong( HikariProxyResultSet.java ) at app//org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.resultSetStartValueSize( SequenceInformationExtractorLegacyImpl.java:110 ) at app//org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.lambda$extractMetadata$0( SequenceInformationExtractorLegacyImpl.java:54 ) at app//org.hibernate.tool.schema.extract.spi.ExtractionContext.getQueryResults( ExtractionContext.java:50 ) at app//org.hibernate.tool.schema.extract.internal.SequenceInformationExtractorLegacyImpl.extractMetadata( SequenceInformationExtractorLegacyImpl.java:39 ) at app//org.hibernate.engine.jdbc.env.internal.ExtractedDatabaseMetaDataImpl.sequenceInformationList( ExtractedDatabaseMetaDataImpl.java:286 ) ... 134 more MemberRepositoryTest > testMember() FAILED java.lang.IllegalStateException at DefaultCacheAwareContextLoaderDelegate.java:142 Caused by: org.springframework.beans.factory.BeanCreationException at AbstractAutowireCapableBeanFactory.java:1751 Caused by: jakarta.persistence.PersistenceException at AbstractEntityManagerFactoryBean.java:421 Caused by: org.hibernate.MappingException at StandardIdentifierGeneratorFactory.java:222 Caused by: org.hibernate.HibernateException at ExtractedDatabaseMetaDataImpl.java:302 Caused by: org.h2.jdbc.JdbcSQLSyntaxErrorException at DbException.java:502 1 test completed, 1 failed > Task :test FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task ':test'. > There were failing tests. See the report at: file:///C:/Users/User/source/BackEnd/SpringBoot1/jpashop/jpashop/build/reports/tests/test/index.html * Try: > Run with --stacktrace option to get the stack trace. > Run with --info or --debug option to get more log output. > Run with --scan to get full insights. * Get more help at https://help.gradle.org BUILD FAILED in 8s 4 actionable tasks: 2 executed, 2 up-to-date
KeyCloak 을 인가서버로 활용하고 Resource 자원 사용하는 Data API 인가 처리를 하는 Auth API (Gateway) 를 구현해서 진행하고 있습니다. 그런데 너무 여러가지 방식이 많다보니 혼돈이 와서 선생님이 가르쳐주신 방식으로 인가와 인증을 구현하려고하는데, 인가 서버 -> KeyCloak 사용 게이트 웨이에 Oauth2 를 넣으려고 하는데 개념적으로 궁금한 점이 있어 여쭤봅니다. 공개 클라이언트 방식과 기밀 클라이언트 가 구현함에 있어 어떤 차이를 가지는지 의문입니다. 가령 react -> KeyCloak 요청 시 token 을 바로 가져오려고 하는데, 이 토큰을 받는 것 까진 문제가 없습니다. 하지만 영상에서 보여주신 것과 같이 자원 API 로 접근하는 권한을 획득하기 위해서 기밀 클라이언트 방식으로 구현하면 code 를 리다이렉트 받은 uri 와 token 요청시 리다이렉트 uri 가 같아야하는 문제가 있어서 code 를 auth api 로 받은 뒤 토큰 엔드포인트를 찍어 스프링 프로젝트에서 가져올 때 오류가 발생합니다. react -> keycloak -> code 반환 받은 것 -> spring -> redirect uri 문제로 토큰 발급 불가 가 되는데 어떤 형식으로 처리해야 맞는 것인지 궁금합니다.