앗.. 이런 바보;;
이전 글에 올렸던 상황의 코드에서 두 개의 문제를 발견 했습니다.
1. 멀티파트 리졸버를 등록하지 않았습니다.
엄청난 실수 입니다. -_-;;; 바보 -_- 멍청이 =_=
<bean id="multipartResolver"
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="100000000" />
</bean>
class="org.springframework.web.multipart.commons.CommonsMultipartResolver">
<property name="maxUploadSize" value="100000000" />
</bean>
2. 필요없는 캐스팅.
// response.setContentType("text/plain");
// if (! (request instanceof MultipartHttpServletRequest)) {
// response.sendError(HttpServletResponse.SC_BAD_REQUEST, "Expected multipart request");
// return null;
// }
// MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
// MultipartFile file = multipartRequest.getFile("picture");
// if (! (request instanceof MultipartHttpServletRequest)) {
// response.sendError(HttpServletResponse.SC_BAD_REQUEST, "Expected multipart request");
// return null;
// }
// MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request;
// MultipartFile file = multipartRequest.getFile("picture");
이렇게 어렵게 가져올 필요없이 그냥 커맨드 객체에서 가져오면 되는데 말이죠. 책에 나온 코드 그대로 붙였더니 괜히 복잡해 졌네요. 물론 리퀘스트가 리졸버 거치면서 멀티파트리퀘스트로 바꼈는지 확인하는 코드를 위의 1번과 같은 잘못을 했을 때 유추하기에 좋습니다.
와~ 파일이 웹서버 위에 올라가 있지 않아서 보이지 않는 것 같은데요. Anyway 파일 업로드를 사용하여 사진을 올리고 보여주는데 성공하였습니다. 음하하하 이제 운동해야쥐~