해결된 질문
작성
·
478
·
수정됨
1
1.
13:09 부분을
Integer statusCode = (Integer)request.getAttribute(ERROR_STATUS_CODE)
위와 같이 해도 될텐데, RequestDispatcher를 사용하신 이유가 궁금합니다.
2.
log.info("1 : " + request.getAttribute(ERROR_STATUS_CODE));
log.info("2 : " + request.getAttribute(RequestDispatcher.ERROR_STATUS_CODE));
getAttribute의 반환 타입이 Object여서 위와 같이 로그 출력을 하면 Object안에 데이터가 출력될 줄 알았는데 500이 출력 됩니다.
이건 왜 그런건가요? 타입 자동 변환 그런것이 있는 건가요?
답변 1
-1
안녕하세요. lwisekiml님, 공식 서포터즈 David입니다.
RequestDispatcher에도 동일하게 정의되어 있음을 보여주기 위해서 입니다
Request에 RequestDispatcher.ERROR_STATUS_CODE을 키로 가지고, HttpServletResponse.SC_INTERNAL_SERVER_ERROR을 값으로 가지는 Attribute가 등록되어 있기 때문입니다.
감사합니다.