일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 아이템 25
- JPA
- 객체지향 쿼리 언어
- GitHub Actions
- chapter4. 리포지터리와 모델 구현
- 아이템29
- 아이템 26
- 이펙티브자바
- Domain Driven Design
- 아이템31
- jdbc
- chatgpt 연동
- 기업프로젝트
- 도메인 주도 개발 시작하기
- 아이템 24
- cicd
- chapter5. 스프링 데이터 jpa를 이용한 조회 기능
- ddd
- JPQL
- 아이템 23
- 큐시즘
- 일ㅊ
- java
- criteriaquery
- 아이템 27
- 자바 ORM 표준 JPA 프로그래밍
- 아이템30
- 아이템 28
- Spring Batch
- 최범균
Archives
- Today
- Total
목록2024/05/08 (1)
코딩은 마라톤
[Springboot] Filter와 Interceptor
학습하게 된 계기지금 하고 있는 프로젝트가 기능 구현은 다 끝났지만, 인증과 관련해서 액세스 토큰만 사용하기 때문에 짧은 유효시간으로 잦은 로그인이 발생했다. 그래서 리프레시 토큰을 추가해서 안정성을 높이고자 했는데,, 모든 에러를 처리해줬음에도,, 500 에러만 계속 떠서 무슨 이유에서 에러가 발생하는지 알 수 없었다.. 그 이유를 최근에서야 알게 됐는데 바로 Filter 때문이었다. 필터에서 내가 커스텀한 ServiceException이 발생 시 에러 메시지를 보내고, 그 외에 모든 에러는 500 서버 에러를 보낸다. 하지만 ServiceException은 거진 Service 레이어에서 발생하기 때문에 필터에서 디스패처 서블릿으로 넘어간 후 에러가 발생하여 필터에서 catch하지 못하는 상황이었다..
Backend/SpringBoot
2024. 5. 8. 18:42