문제:NullPointException
문제 해결 과정
게시판의 게시물을 불러오기 위해 우측 상단 Board를 눌렀는데 아무런 값이 뜨질 않았다. 인텔리제이를 확인해보니 'BoardController'의 32번째 줄에서 NullPointerException이 발생했다. 흥분된 마음을 가라앉히고 컨트롤러를 살펴봤다.
빨간줄 그은 부분(32번째줄)에서 에러가 발생했다. NullPointerException은 존재하지 않은 레퍼런스를 참조. 즉 null값을 참조했기에 문제가 발생한다. 그래서 값을 못불러 온다고 추측하고 Mapper부터 Controller, Service를 살펴봤다.하지만 null값을 불러올 단서를 못 찾았다. 도대체 왜 값을 못불러 올까? 문제를 포기하고 싶었다. 그런데 도메인을 살펴보니.....
도메인에 page와 pageSize에 대한 값이 없었다. 혹시, 설마 값이 안적혀있어서 그러니깐 아예 값이 없어서 오류가 난것이 아닌가?! 생각하고 흥분된 마음을 가라앉히고 page와 pageSize를 쳐봤다. 그러니 다음과 같은 화면이 떴다.
해결했다. 문제의 원인은 page와 pageSize의 값이 없는데 두 값을 불러오려다 발생한거다. 값이 없는데 값을 불러온다는게 말이 안된다. 간단히 요약하면 문제의 원인은 없는 값을 참조했기 때문이다.
문제의 원인: 없는 값을 참조했다.
문제해결
문제의 원인이 없는 값을 참조한거라면, 값을 넣어 주면된다. 그래서 page와 pageSize가 null값이어도 값이 들어갈 수 있도록 기본값을 설정해줬다.
그러니 도메인에 값이 없어도 자동으로 page=1과 pageSize=10이 설정되어 문제가 발생하지 않는다.
'기혁씨의 삽질표류기' 카테고리의 다른 글
[에러] 매핑 과정에서 발생한 NullPointerException (0) | 2022.09.27 |
---|---|
[에러] 화면 안 넘어가는 문제 (0) | 2022.09.15 |
[에러]404 Not Found (0) | 2022.09.13 |
프로젝트 일련의 과정 (0) | 2022.08.21 |
[mySql]Error Code: 1054 (0) | 2022.08.17 |