inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

BindingResult 부분에서 질문있습니다.

해결된 질문

32

sangmin8276

작성한 질문수 2

0

image.png

강의: 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 검증1 Validation - 오류 코드와 메시지 처리6

가격에 문자열 "qqq" 를 입력하면

 

image.png

500 에러가 뜹니다.

image.png

이게 179에 있는 코드있입니다. getPrice() 메서드에서 오류가 나는 것 같은데 왜 그런 걸까요?

답변 1

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

sangmin8276님, 가격에 문자열이 입력되면서 NullPointerException이 발생하는 문제는 getPrice() 메서드의 반환값이 null이라서 발생합니다. hello.itemservice.domain.item.Item.getPrice() 메서드가 null을 반환할 경우, 이를 intValue()로 변환하려고 시도하면서 오류가 발생합니다.

해결 방법은 두 가지가 있을 수 있습니다:

  1. getPrice() 메서드가 null을 반환하지 않도록 기본 값을 설정합니다. 예를 들어, 기본 가격을 0으로 설정할 수 있습니다.

  2. getPrice() 메서드의 결과가 null인지 확인 후 처리를 진행하거나, 적절한 예외 처리를 추가하는 것입니다. Optional을 사용할 수도 있으며, Integer로 받아 null인지 검사한 뒤 이를 처리하는 로직을 추가할 수 있습니다.

서버 에러를 확인하기 위해서는 /error 매핑을 따로 설정하여 에러 페이지를 커스터마이징할 수도 있습니다. 만약 기본 오류 처리를 변경하고 싶다면 Spring Boot의 ErrorController를 구현하거나 ErrorAttributes를 사용해 내용을 대체해보세요.

추가적인 도움이 필요하시다면 알려주세요.

https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#web.servlet.spring-mvc.message-codes
https://docs.spring.io/spring-boot/docs/current/reference/htmlsingle/#web.servlet.spring-mvc.error-handling

강의 추천해주세요

2

24

1

케이테스트 서버 운영 방법

2

41

1

cpu&memory 재설정하기에 질문이 있습니다.

1

47

2

[HDL 32장-2부] 참고 링크 관련

1

35

2