스프링으로 파일데이터를 비동기로 업로드를 시키고 싶은데..
동기화 방식으로 넘겨주는건 되게 잘되는데 비동기로 전송을 하니까 컨트롤러 서비스는 잘 타는데 결과적으로 파일이 요청데이터로 안넘어와서 파일을 생성할 수가 없네요ㅠㅠㅠ 뭐가 잘못된건가요?
- html =======================================================================
<span class="</span></font><span style="font-family: Helvetica, Arial, 'lucida grande', tahoma, verdana, arial, sans-serif; color: rgb(20, 24, 35); font-size: 14px; line-height: 19.3199996948242px;">spanVideoBtn">파일변경</span>
<form:form modelAttribute="uploadFile" enctype="multipart/form-data" method="post" action="teach.curriculum.video.upload.do">
<input type="file" id="upfile" class="video_file" onChange="Upload_Video(this)" />
</form:form>
- javascript ====================================================================
$(document).ready(function(){
$(".spanVideoBtn").click(function() {
$("."+"video_file").click();
});
});
function Upload_Video(th){
$(th).parent().ajaxSubmit({
dataType : "json",
uploadProgress : function(event,position,total,percentComplete){
$(".progressInput").val(percentComplete+"%");
},
success : function(data) {
alert("메세지 : " + data.result);
},
error : function(data) {
alert("오류발생");
}
});
}
그리고 컨트롤러에서
@RequestMapping(value = "teach.curriculum.video.upload.do", method = RequestMethod.POST)
public @ResponseBody Map<?,?> videoUpload(@ModelAttribute("uplaodFile") FileForm uploadFile,ModelMap modelMap)
{ ....}
이렇게 인자 받고 FileForm 객체는 List<MultipartFile> 타입과 String 타입(경로로쓸려고) 있습니다ㅠㅠ
댓글 0