Search

Property or filed ‘’ cannot be found on null (2)

태그
Thymeleaf
재현님이 구상하신 내용을 토대로 작업을 하려는데 다음과 같은 에러가 발생했습니다.
이같은 에러는 db 에 데이터가 없는 경우에 발생합니다. 저의 경우는 TodoCard 에 대한 정보가 없어서 발생했습니다. 이를 해결하기 위한 방법은 두가지가 있습니다.

Controller 에서 해결하기

조회해온 데이터가 없는 경우 빈 객체를 선언해서 넘겨줍니다.
화면에서는 객체가 null 이 아니기 때문에 화면단 수정없이 해결 가능합니다.

Thymeleaf 에서 해결하기

컨트롤러를 수정하다가 왠지 잘못될것 같아 타임리프에서 해결해보려 했습니다.
조건에 null 이 아닌 경우만 조회하도록 조건을 걸거나, ? operator 를 사용하면 됩니다. 저는 후자가 더 간편해서 ? 를 사용했습니다.
이런식으로 tlIdx 를 불러와야하는(필요한) 부분들에 ? 를 써줬더니 에러가 해결되었습니다.

도움받은 블로그