본문 바로가기
오류 해결

[Java] 함수 호출 시 NullPointerException 발생

by 쿠쿠씨 2023. 7. 20.
반응형

데이터를 등록하는 프로세스에서 저장 버튼을 누르자 java.lang.NullPointerException이 발생했다.

확인해보니 파라미터의 값에는 이상이 없었고, Service에서 다른 Service의 함수를 호출하는데 오류가 발생했다.

 

@Service
public class InfoService{

	private StockService StockService;
    
	public String updtStock(Map map){
		String shopCd = (String)map.get("shopCd");
		String partNo = (String)map.get("partNo");
		String userId = (String)map.get("userId");
        
		//...
        
		StockService.regiInsertStock(shopCd, partNo, userId);	//오류발생
        
		//...
    }
}

 

@Service
public class StockService {
	
    public void regiInsertStock(String shopCd, String partNo, String userId ){
    	//등록 함수 들..
    }

}

 

원인은 함수를 호출하는 Service 선언부에 @Autowired 어노테이션이 빠져있어서였다.

@Autowired가 없으니 의존성 주입이 이루어지지 않았고, 함수를 호출하니 NullPointerException이 발생한 것이다.

 

@Service
public class InfoService{
	@Autowired
	private StockService StockService;
    
    public String updtStock(Map map){
    	String shopCd = (String)map.get("shopCd");
        String partNo = (String)map.get("partNo");
        String userId = (String)map.get("userId");
        
        //...
        
    	StockService.regiInsertStock(shopCd, partNo, userId);	//잘 실행됨 !!
        
        //...
    }
}

@Autowired를 추가하니 해당 함수가 잘 실행되었다.

 

반응형

댓글