I can do it(Feat. DEV)

Spring에서 ajax return 404 Error 날 때 본문

개발자 모드/오류처리

Spring에서 ajax return 404 Error 날 때

까짓거 해보자 개발자 2023. 3. 8. 17:10
728x90

필자는 뷰단은 jsp를 사용하고 서버는 Spring을 사용하는데,

jsp에서 뷰말고 데이터만 가져와야할 상황이 생겨서

ajax 통신을 사용하여 컨트롤러로 보냈음.

근데 요청은 잘가는데 return할 때 404 Error가 뜸..

 

이유를 몰라 갓글에 검색해서 찾아보니

결과적으로는 컨트롤러 return 타입에 @ResponseBody 를 추가해주지 않아서 뜨는 에러라고 함

    @RequestMapping(value = "/url")
    public @ResponseBody Map<String, Object> getDeptList(SearchVO searchVO){    //이 부분  
        Map<String, Object> resultMap = new LinkedHashMap<>();
        resultMap.put("deptList",imtDeptDtService.findAllDeptList(searchVO));
        return resultMap;
    }

필자의 경우 404 error의 이유가 Spring은 리턴값을 view의 이름으로 받아들이는데

Map 형태의 데이터를 전달해서 그런 view를 찾을 수 없기때문에 404 error가 난 것임.

그래서 @ResponseBody를 추가해주면 리턴 값이 view 이름이 아닌 json 또는 xml 타입으로 알아서 객체로 리턴하도록 해주는 것임!!👍

오늘도 하나 배웠음!!😊

 

 

📢참조

https://velog.io/@supark4170/ajax-404

 

실행은 되는데 ajax 404 에러가 날때

컨트롤러서비스index.js저장 기능이 동작은 하는데, 계속 브라우저에서 404 에러가 발생합니다. 에러 로그를 확인하니 ajax 부분에서 에러가 납니다. 디버깅 하는 습관을 기르려고 디버거를 열심히

velog.io

 

728x90