복불복망
523
2021-10-19 11:05:22 작성 2021-10-19 11:06:19 수정됨
2
204

java 스케줄(@Scheduled) 질문 드립니다...



@SuppressWarnings("null")
@Scheduled(cron="*/10 * * * * *")
public void weakBookListExcelAd(){
	HttpServletResponse response = null;
	HttpServletRequest request = null;
	VnaraExmnnRgstrVO vo = null;
	ModelMap model = null;
		
	try {
		System.out.println("1");
		vo.setIsChecked(null);
		weakBookListExcelAde(response, request, vo, model);
		System.out.println("3");
	} catch (Exception e1) {
		// TODO Auto-generated catch block
		e1.printStackTrace();
		System.out.println("try catch excepion.............");
	}
		
}


@RequestMapping("/book/weakBookListExcelAd.do")
public void weakBookListExcelAde(HttpServletResponse response, HttpServletRequest request,	@ModelAttribute("VnaraExmnnRgstrVO") VnaraExmnnRgstrVO vo, ModelMap model) throws Exception
{
String[] isChecked = vo.getIsChecked();
		if(isChecked.length < 1){
			vo.setIsChecked(null);
		}


@Scheduled(cron="*/10 * * * * *")

public void weakBookListExcelAd() 에서 스케줄을 걸어

public void weakBookListExcelAde()을 지속적으로 실행시켜려고합니다..

근데 vo값 response, request, model이 필요해서 셋팅을 해줘야하는데..


java.lang.NullPointerException이 계속 발생합니다.

디버깅이나 에러나는 지점을 보면 

weakBookListExcelAde()의 String[] isChecked = vo.getIsChecked(); 부분을 만나면 바로 에러가 발생하는데

 어떤게 문제일까요...

vo는 위에서 셋팅해서 아래에서 받는것도 테스트해봤는데 값 전달도 못받는것 같고..


0
  • 답변 2

  • woo0415
    284
    2021-10-19 11:15:42 작성 2021-10-19 11:21:10 수정됨

    첫번째 소스 6라인 보시면 VnaraExmnnRgstrVO vo = null; 로 VnaraExmnnRgstrVO 객체가 생성이 안되었내요.


    객체 생성 후 확인해보시고 11라인에도 setIsChecked를 null로 세팅하셔서 말씀하신 부분에서 NullPointerException이 발생할수 있으니 참고하셔요.

  • 복불복망
    523
    2021-10-19 11:28:22 작성 2021-10-19 11:32:54 수정됨

    #woo0415

    감사합니다! vo 객체생성을 안했었네요...

    vo값 세팅해서 잘 넘어오네요. 11라인에서 null로 셋팅해서 익셉션 발생하네요

    weakBookListExcelAde에서 null로 셋팅하고 진행해봐야겠습니다 감사합니다!


    컥 넘어와서 vo 셋팅도 안되나보네요..

    Unexpected error occurred in scheduled task

    java.lang.NullPointerException: null

  • 로그인을 하시면 답변을 등록할 수 있습니다.