코딩항해기

[Error/Spring] NPE : null인 배열 for-each문 본문

Error solution

[Error/Spring] NPE : null인 배열 for-each문

miniBcake 2024. 10. 29. 11:44

 

NullPointerException: Cannot read the array length because "<local15>" is null

 

Null인 배열을 향상된 for문 (for-each문)에 사용해 발생한 문제이다. (일반 for문도 length를 추출할 때 메서드의 주체가 되므로 NPE가 발생한다)

빈 배열이 아니라 null임을 인지해서 null체크를 했어야했는데 해당 검증이 빠져 발생한 오류이다.

        //메뉴 검색 세팅
        if(storeMenu != null){//NPE 방지
            for(String menu : storeMenu){
                log.info("log: loadListStore - add menu condition : [{}]", menu);
                filterList.put(menu, this.YES);
            }
        }
        //결제방식 검색 세팅
        if(storePayment != null){//NPE 방지
            for(String payment : storePayment){
                log.info("log: loadListStore - add payment condition : [{}]", payment);
                filterList.put(payment, this.YES);
            }
        }

 

검증을 추가해 해결했다.