묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
Remote Git Repository
제목 : Remote Git Repository 수업에서컨피그 설정 레포지토리의 브랜치가 main 이면http://127.0.0.1:8888/ecommerce/dev접속하여도 정보를 가져오지못하는데..무조건 브랜치가 master 이어야 하나요?master 이면 정보를 가져옵니다..
-
해결됨스프링 배치
분류가 필요한 상황이 있는데 방향에 대해 질문드립니다.
안녕하세요.구현하고자 하는 배치를 해보면서 강의를 부분부분 병행하며 듣고 있는데, 제가 원하는 배치는 어떻게 설계 해야 하는지 고민이 되어 조언을 얻고 싶어 질문드립니다.구현하려는 상황은 다음과 같습니다. db 컬럼 중 플래그 값이 있고 그걸로 reader 에서 readread 한 데이터들로 processor 에서 로직 진행 (로직 중간중간 db 조회나 업데이트하는 상황도 생김) writer 에서 write 해야 하는 테이블이 4개 인데 processor 로직 조건에 따라 어떤 경우는 2개, 어떤 경우는 4개 등 write 되는 테이블 개수가 달라짐마지막에 최종적으로 read 한 모든 데이터의 플래그 값을 업데이트 쳐서 다음 read 에서 조회되지 않게 함 처음 생각은 reader 와 processor 를 하나씩 만들고 writer 를 여러개 만드려고 했습니다.processor 에서 리턴되는 객체 하나로 여러 테이블에 write 해도 될만큼 필드가 겹치는게 많아서 이렇게 생각했습니다.그래서 찾아보니 writer 에도 composite 과 classifierComposite 구현체가 있더라구요.그런데 둘 다 사용해봤는데 제가 원하는 바를 실현시키지 못했습니다. 분류 후 여러개를 writer 해야 하는데 composite 는 분류가 안되고 classifierComposite 은 하나만 writer 되더라구요.그래서 writer 여러개로 설계하는게 안맞는 방법인가 싶어서요.같은 맥락으로 processor 여러개로 하는 방법도 뭔가 그림이 잘 안그려지고..결국 step 을 여러개 하는 방향을 생각 중인데 이때도 고민거리가 생깁니다.step 으로 했을 때는 같은 조건으로 테이블 개수만큼 read 를 여러번 하게 된다는 단점이 있는 것 같아서요.그리고 4번에서 read 하는 조건 플래그 값을 update 하는데 첫번째 스탭에서 해버리면 다음 스탭에서 read 를 못하게 되버립니다.그리고 2번 과정도 각 테이블마다 거의 똑같고 마지막에 조건에 따라 저장할 테이블만 분류하는 과정만 있는건데 그거를 스탭마다 중복되게 하는 것도 그렇습니다. 구현 상황을 보셨을 때 어떤 식으로 처리하는게 좋다고 생각하시는지 궁금합니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
(해결)AOP 시간측정이 테스트 할 때만 출력되는 경우
안녕하세요. AOP 강의를 듣다가 테스트를 할 때는 Start, End가 잘 출력되는데 서버에 띄워서 회원 목록을 누를 시 출력이 안되는 경우가 있었습니다.저의 경우 test/java/hello.hellospring 밑의 경로로 파일을 만들었기 때문에 생겼었고 이를 main 쪽으로 옮겨주니까 정상적으로 실행이 되었습니다.혹시 같은 일로 문제가 생기셨다면 참고해주셔도 좋을 것 같습니다. 감사합니다.
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
데이터베이스 업데이트 시 벌크성 수정 쿼리를 사용할 수 없을 때
JPA를 활용하여 여러 개의 row들을 업데이트하는 상황입니다.하지만 전체를 동일하게 수정하는 것이 아니고, 하나의 Service 로직 상에서 여러 개의 row들을 서로 다른 값으로 업데이트해야하는 상황입니다. 이 경우에는 각 데이터에 대해서 일일이 변경 감지를 통해 update 하는 게 최선일까요?
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
HashMap<> store 의 원리에 대한 질문
강의 4:47 즈음에서 궁금해진 내용입니다. MemoryMemberRepository 에서,save() 함수를 통해 HashMap<> store 에 id 값과 Member 변수를 담도록 되어 있는데,그 밑에 있는 findById(), findAll() 함수에서 store 에 담겨져 있는 값을 가져오려면 store 가 어딘가에 저장이 되어야 하는 것이 아닌가요?프로그램을 종료해도 store 에 담겨 있는 정보가 휘발되지 않는 건가요?
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
Hello.java 출력 오류 내용 질문
=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.안녕하세요 실전! 스프링부트 JPA 활용편 1편 프로젝트 생성 부분에서 hello 부분 string이 왜 잘못되었는지 몰라서 질문 남깁니다.어떻게 해야 출력 가능한지 알고 싶습니다.
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
gradlew.bat 파일 빌드가 안됩니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.gradlew.bat build로 입력하면 이렇게 나옵니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
MemoryMemberRepositoryTest.java 실행시 store관련 오류가 발생합니다.
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? 예2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예[질문 내용]여기에 질문 내용을 남겨주세요.package repository; import hello.hellospring.domain.Member; import hello.hellospring.repository.MemoryMemberRepository; import org.junit.jupiter.api.AfterEach; import org.junit.jupiter.api.Test; import java.util.List; import static hello.hellospring.repository.MemoryMemberRepository.store; import static org.assertj.core.api.Assertions.*; class MemoryMemberRepositoryTest { MemoryMemberRepository repository = new MemoryMemberRepository(); @AfterEach public void afterEach(){ repository.clearStore(); } @Test public void save() { Member member = new Member(); member.setName("spring"); repository.save(member); Member result = repository.findById(member.getId()).get(); assertThat(member).isEqualTo(result);//member 가 result 와 같다. } @Test public void findByName(){ Member member1 = new Member(); member1.setName("spring1"); repository.save(member1); Member member2 = new Member(); member2.setName("spring2"); repository.save(member2); Member result = repository.findByName("spring1").get(); assertThat(result).isEqualTo(member1); } @Test public void findAll(){ Member member1 = new Member(); member1.setName("spring1"); repository.save(member1); Member member2 = new Member(); member2.setName("spring2"); repository.save(member2); List<Member> result = repository.findAll(); assertThat(result.size()).isEqualTo(2); } public void clearStore(){ store.clear(); } }이렇게 오류가 뜹니다. 여기 전까지는 오류가 발생하지 않았습니다.도움 주시면 감사하겠습니다.
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
빈 중복 충돌 질문
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]2024-02-18T19:26:55.314+09:00 INFO 21364 --- [ restartedMain] jpabook.jpashop.JpashopApplication : Starting JpashopApplication using Java 17.0.3 with PID 21364 (C:\Users\HJ\Documents\GitHub\Spring-Study\out\production\classes started by HJ in C:\Users\HJ\Documents\GitHub\Spring-Study)2024-02-18T19:26:55.316+09:00 INFO 21364 --- [ restartedMain] jpabook.jpashop.JpashopApplication : No active profile set, falling back to 1 default profile: "default"2024-02-18T19:26:55.361+09:00 INFO 21364 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : Devtools property defaults active! Set 'spring.devtools.add-properties' to 'false' to disable2024-02-18T19:26:55.361+09:00 INFO 21364 --- [ restartedMain] .e.DevToolsPropertyDefaultsPostProcessor : For additional web related logging consider setting the 'logging.level.web' property to 'DEBUG'2024-02-18T19:26:55.488+09:00 WARN 21364 --- [ restartedMain] ConfigServletWebServerApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [jpabook.jpashop.JpashopApplication]2024-02-18T19:26:55.740+09:00 ERROR 21364 --- [ restartedMain] o.s.boot.SpringApplication : Application run failedorg.springframework.beans.factory.BeanDefinitionStoreException: Failed to parse configuration class [jpabook.jpashop.JpashopApplication] at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:179) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.annotation.ConfigurationClassPostProcessor.processConfigBeanDefinitions(ConfigurationClassPostProcessor.java:416) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.annotation.ConfigurationClassPostProcessor.postProcessBeanDefinitionRegistry(ConfigurationClassPostProcessor.java:289) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanDefinitionRegistryPostProcessors(PostProcessorRegistrationDelegate.java:349) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.support.PostProcessorRegistrationDelegate.invokeBeanFactoryPostProcessors(PostProcessorRegistrationDelegate.java:118) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.support.AbstractApplicationContext.invokeBeanFactoryPostProcessors(AbstractApplicationContext.java:788) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:606) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.boot.web.servlet.context.ServletWebServerApplicationContext.refresh(ServletWebServerApplicationContext.java:146) ~[spring-boot-3.2.2.jar:3.2.2] at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:754) ~[spring-boot-3.2.2.jar:3.2.2] at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:456) ~[spring-boot-3.2.2.jar:3.2.2] at org.springframework.boot.SpringApplication.run(SpringApplication.java:334) ~[spring-boot-3.2.2.jar:3.2.2] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1354) ~[spring-boot-3.2.2.jar:3.2.2] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1343) ~[spring-boot-3.2.2.jar:3.2.2] at jpabook.jpashop.JpashopApplication.main(JpashopApplication.java:10) ~[classes/: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.springframework.boot.devtools.restart.RestartLauncher.run(RestartLauncher.java:50) ~[spring-boot-devtools-3.2.2.jar:3.2.2]Caused by: org.springframework.context.annotation.ConflictingBeanDefinitionException: Annotation-specified bean name 'memberRepository' for bean class [jpabook.jpashop.repository.MemberRepository] conflicts with existing, non-compatible bean definition of same name and class [jpabook.jpashop.MemberRepository] at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.checkCandidate(ClassPathBeanDefinitionScanner.java:361) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.annotation.ClassPathBeanDefinitionScanner.doScan(ClassPathBeanDefinitionScanner.java:288) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.annotation.ComponentScanAnnotationParser.parse(ComponentScanAnnotationParser.java:128) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.annotation.ConfigurationClassParser.doProcessConfigurationClass(ConfigurationClassParser.java:306) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.annotation.ConfigurationClassParser.processConfigurationClass(ConfigurationClassParser.java:246) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:197) ~[spring-context-6.1.3.jar:6.1.3] at org.springframework.context.annotation.ConfigurationClassParser.parse(ConfigurationClassParser.java:165) ~[spring-context-6.1.3.jar:6.1.3] ... 18 common frames omittedProcess finished with exit code 0 -----------------------------------------다음과 같은 에러코드를 받았습니다 위에 내용을 보면Annotation-specified bean name 'memberRepository' for bean class [jpabook.jpashop.repository.MemberRepository] conflicts with existing, non-compatible bean definition of same name and class [jpabook.jpashop.MemberRepository]해당 문구가 있는 것을 보고 같은 이름의 클래스가 2개 존재하여 bean이 중복되어 충돌이 일어난 것을 확인 하였는데 jpabook.jpashop.MemberRepository를 삭제했는데도 불구하고 해당 에러가 계속 발생합니다 왜일까요? ..존재하지 않는 사진 첨부하겠습니다.
-
미해결스프링부트 JUnit 테스트 - 시큐리티를 활용한 Bank 애플리케이션
import 오류
안녕하세요 프로젝트 생성 시 이렇게 오류가 뜨는데, 어떤 문제인지 모르겠어서 글 올립니다. 현재 jdk17 버전 사용중이고, 그래서 3버전으로 바꿨는데 jdk 11버전 다운로드와 2점대로 버전을 낮춰야하는건지 여쭤보려구요! build.gradle 사진도 첨부합니다. 추가 간단하게 web,devtools로도 테스트 프로젝트 생성해봤는데 똑같은 에러가 납니다ㅠㅠ 강사님 repo에 있는걸 clone 해서 연결해봐도 같습니다ㅠㅠ
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
java -jar 실행 의미 ?
안녕하세요 '빌드하고 실행하기' 강의를 듣다가 궁금한 점이 생겨서 질문 남겨봅니다.강의를 듣다가 java -jar 실행 과정에 궁금증이 들었는데요.. 제가 war 파일 배포를 경험해본 적이 있었는데,war 파일을 배포할 때는 빌드 후 생성된 war 파일을 서버의 특정 경로에 올려두고 서버 시작을 했었습니다.그래서 jar 파일을 실행한다는 것이 서버를 어떤 의미인가... 조금 헷갈리기도 하고 물음표가 생기더라고요. 구글링을 해봤는데 jar는 톰캣 서버 자체가 이미 내장 되어 있는 파일인 것 같더라고요..그래서 jar를 배포할 때, war처럼 특정 경로에 jar를 옮기는 과정 자체가 필요하지 않고jar 자체를 실행하면 jar 안에 있는 서버가 같이 말린 프로젝트 소스까지 알아서 배포하는 그런 원리 일까요....? 그리고 제가 과거 프로젝트를 하면서 빌드를 했을 때는 war 파일 생성되었는데, 강의 실습의 빌드 결과물은 jar 파일인데 빌드 시 어떤 조건에 의해 war, jar가 생성되는지도 궁금합니다.. 확실한 지식이 없다 보니 질문이 조금 횡설수설한 점 죄송합니다..ㅜ
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
PATCH와 PUT의 차이점
14강 유저 업데이트 부분에서 PATCH가 아닌 PUT을 사용하는 이유가 궁금합니다!! 제가 알기로는 PATCH는 일부 수정이 가능하고, PUT은 완전 덮어쓰기라고 알고 있는데, PATCH가 아닌 PUT을 사용하는 이유가 무엇인가요?? 만약 PATCH 사용이 불가능한게 아니라 가능할 경우 코드가 어떻게 되는지도 궁금합니다! 항상 감사합니다!!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
빌드 후 에러가 떠요
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]빌드하면 잘 되긴 하는데 마지막에 저렇게 에러가 떠요.어떤게 문제인가요??
-
미해결스프링 시큐리티 OAuth2
403 에러
전에도 남겼었는데 이번에 실습을 하면서 AuthorizationCode Grant 를 누르면 인증을 받기 위한 로그인을 하고 나면 403 에러가 발생합니다. 그래서 Clientcontroller 에서 만든 로직에다가 breakpoint 를 찍으면서 확인해보면 결과 정보들은 강사님과 똑같이 들어있었습니다. 근데 return "/client" 부분만 가면 403 에러가 나와서 화면이 나오질 않는데 어느 부분을 먼저 봐야할까요..? 계속 수정해봐도 계속 403 에러가 발생해서 다시 질문드립니다!
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
List Map 전환
주문 조회 V5: JPA에서 DTO 직접 조회 - 컬렉션 조회 최적화강의에서 Map으로 컬렉션 추가하는 것을 보고 질문 드립니다.(list를 map으로 변환하고 key인 orderId로, value인 orderItem 컬렉션 추가) 그대로 orderItems 리스트로 추가하는 방법과 비교해서 "매칭 성능 향상(O(1))"이 된다고 적혀졌는데,list → map 으로 바꾸는 비용 또한 고려해서구체적으로 어떻게 성능 차이가 있는지 궁금합니다.result.forEach(o -> o.setOrderItems(orderItems));
-
미해결생산성을 향상시키는 스프링부트 기반의 API 템플릿 프로젝트 구현
applycation.yml 의 readTimeout 이 적용이 안됩니다.
Springboot 3.0.2ext { set('springCloudVersion', "2022.0.1")} 최신 부트 3.2 에서는 호환 버전이 없어서 그런지 잘 안되서 위 와 같은 버전으로 하니깐 동작을 하는데,타임아웃관련해서는 application.yml 에 설정한 부분이 적용안되는것 같습니다.아래 readTimeout 부분에 마우스 오버 해보니, "Cannot resolve configuration property 'feign.client.config.default.readTimeout' "라고 표시 되더라구요.혹시 버전에 따른 문제인지 코드부분을 점검해봐도 원인을 알 수 가 없네요.확인 좀 부탁드릴게요~ feign: client: config: default: connectTimeout: 5000 readTimeout: 5000 @GetMapping("/health") public ResponseEntity<HealthCheckResponseDto> healthCheck() { try { Thread.sleep(6000); } catch (InterruptedException e) { e.printStackTrace(); } ..... }
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
public static void 클래스 run이 안되요
위와 같이 선생님처럼 코드 왼쪽에 초록색 run 버튼이 안나오고, 오른쪽 상단에도 그 버튼이 활성화가 되지 않고 this file in editor is not runnable 이라는 메세지가 뜹니다. 어떻게 해야할까요?
-
미해결코드로 배우는 React with 스프링부트 API서버
섹션8 > API 서버에서 소셜 회원처리
안녕하세요, 강사님.섹션8 > API 서버에서 소셜 회원처리18분 26초까지 영상을 보고로그인을 시도했는데 DB 테이블에 계정이 생성이 안되네요...어디쪽이 문제일까요??
-
미해결스프링 시큐리티 OAuth2
redirect_uri에 관한 질문입니다!
안녕하세요.사실 강의 초반부터 궁금했던 건데 이제서야 질문을 하게 됐네요.포스트맨으로 테스트하실 때 redirectUri를 http://127.0.0.1:8081 로 하셨는데요.브라우저에서 code 요청을 하면 response가 http://127.0.0.1:8081로 오는데요. 해당 브라우저가 8081 포트에서 동작하고 있지 않은데 어떻게 8081로 설정해도 브라우저로 응답이 오는지 궁금합니다. 이렇게만 보면 그냥 user-agent로 응답이 오는 것 같고, redirectUri는 nonce나 state 값 같은 역할만 하는 건가? 라는 생각이 들 때가 있습니다.
-
미해결스프링 시큐리티 OAuth2
액세스 거부
/home 에서 AuthorizationCode Grant 를 누르면 액세스 거부(403 에러)가 발생합니다..OAuth2ClientConfig 에서 auth.requestMatchers("/home").permitAll().anyRequest().authenticated()) 도 설정했는데.. 왜 인증 받는 화면으로 가지 못 하고 액세스 거부가 생기는건가요..??