Trouble Shootings(20)
-
[Nginx] 413 Error: Request Entity Too Large
상황 설명🛠️환경- SpringBoot 3.4.2- Swagger 2.0.2- Nginx 1.27.3 사진 업로드 기능을 만들고 Swagger에서 테스트를 했는데, "413 Error: Request Entity Too Large" 오류가 뜨더군요. SpringBoot `application.properties` 설정에 파일 업로드 제한 크기를 설정해줬음에도 불구하고 위와 같은 오류가 떴습니다.# photo missionspring.servlet.multipart.max-file-size=10MBspring.servlet.multipart.max-request-size=10MB 그런데 오류 메시지로 온 Response body에 보니 한 가지 보이는 키워드가 있습니다. nginx/1.27.3>/cent..
2025.02.16 -
[MySQL] SpringBoot에서 Point, Polygon 데이터를 자바 객체에 담기 (with MyBatis)
상황 설명🛠️환경- SpringBoot 3.4.2- MySQL 8.0.41- MyBatis 3.0.4- Liberica JDK 17 LTS 모바일 프로젝트를 진행하던 중, 좌표 데이터를 저장할 일이 생겼습니다. 지도에서 원하는 위치에 사각형을 그리고, 사용자가 폰을 들고 해당 영역에 들어가면 이벤트가 발생할 수 있도록 만들기 위함이었죠. (+지도에서 시각적으로 표시) 저는 RDBMS 기술 스택으로 `MySQL`을 선택한 상황이었고, `MySQL`에는 이러한 공간 데이터를 저장하는 데이터 타입(ex. Point, Polygon)을 지원하는 걸로 알고 있었습니다. 요구사항에 공간에 대한 복잡한 연산이 필요 없어서 그냥 테이블 컬럼으로 각각 위도 경도 좌표를 저장할까도 생각했지만, 중앙점 좌표까지 총 10..
2025.02.16 -
[SpringBoot] @RestControllerAdvice와 Swagger 충돌
❌사건의 발단⚙️환경- SpringBoot 4.3.2- Swagger: org.springdoc:springdoc-openapi-starter-webmvc-ui:2.0.2 개발을 하다가 API마다 예외 처리 코드를 작성하는 게 너무 귀찮고 시간이 많이 들기도 해서 어떻게 방법이 없나 고민하던 찰나에, `@RestControllerAdvice` 어노테이션을 스프링부트에서 제공한단 사실을 알게 되었습니다. 예외처리 핸들러 클래스를 지정하여 해당 어노테이션을 붙이면, 지정한 패키지 경로에 있는 클래스들에서 던진 예외를 받아서 처리할 수 있더라구요. 이렇게 전역적인 핸들러 클래스를 지정하니, `Controller`에서 `try-catch`를 쓸 필요가 없었습니다. 😊 근데 문제는 `@RestController..
2025.02.10 -
[MySQL] Error: Data too long for column "컬럼명"
데이터베이스 테이블 컬럼에 걸어놓은 데이터 타입에 비해, 입력 데이터가 더 많은 저장 공간을 차지해 잘리는 현상입니다.### SQL: INSERT INTO users (code_id, name, nickname, email) VALUES (?, ?, ?, ?)### Cause: com.mysql.cj.jdbc.exceptions.MysqlDataTruncation: Data truncation: Data too long for column 'nickname' at row 1;Data truncation: Data too long for column 'nickname' at row 1] with root cause 닉네임을 받기 위해 `varchar(13)` 정도로 데이터 타입 및 크기를 명시해놨는데, 한..
2025.02.08 -
[MyBatis] parameterType에 중첩 클래스 타입을 넣을 경우
Mapper XML에서 Insert SQL 구문을 작성했는데 다음과 같은 에러 메시지가 SpringBoot 로그에서 떴습니다.Caused by: org.apache.ibatis.builder.BuilderException: Error resolving class. Cause: org.apache.ibatis.type.TypeException: Could not resolve type alias 'domain.controller.auth.AuthRequest.RegistrationUserData'. Cause: java.lang.ClassNotFoundException: Cannot find class: domain.controller.auth.AuthRequest.RegistrationUserData 이..
2025.02.08 -
[Visual Studio Code] "unable to start debugging. unable to establish a connection to gdb. debug output may contain more information." 오류
결론부터 말씀드리면 Visual Studio Code에서 따로 설정을 하여 해결한 것은 아닙니다. 단순히, 저의 어리석은 실수로 인해 발생했던 문제였어요... 이걸 겪으면서 C++ 언어의 무서움이 다시 한 번 느껴집니다. 오류를 안 뱉어요... ☢️ 문제가 발생한 상황 🔗단지번호붙이기라는 백준 사이트 문제를 푸는 중이었고, 작성한 코드가 제대로 돌아가는지 Visual Studio Code 상에서 실행을 해봤습니다. 그런데, 입력값을 주고 실행을 시켜도 아무런 응답이 없었습니다. 무슨 일인가 싶어 중단점을 찍고 다시 입력값을 준 후, 한 줄을 실행했는데 이번에는 디버거가 꺼져버렸습니다. 이게 무슨 일인가요?... 그러다가 Visual Studio Code에서 에러 메세지를 하나 내보내 줍니다. unable..
2023.11.28