네이버 스마트에디터2 질문있습니다.(도저히 해결이 안됩니다....)

네이버 스마트에디터2 질문있습니다.(도저히 해결이 안됩니다....)

QA

네이버 스마트에디터2 질문있습니다.(도저히 해결이 안됩니다....)

답변 1

본문


    function callAjaxForHTML5 (tempFile, sUploadURL){
        console.log(1);
        var oAjax = jindo.$Ajax(sUploadURL, {
            type: 'xhr',
            method : "post",
            onload : function(res){ // 요청이 완료되면 실행될 콜백 함수
                var sResString = res._response.responseText;
                if (res.readyState() == 4) {
                    if(sResString.indexOf("NOTALLOW_") > -1){
                        var sFileName = sResString.replace("NOTALLOW_", "");
                        alert("이미지 파일(jpg,gif,png,bmp)만 업로드 하실 수 있습니다. ("+sFileName+")");
                    }else{
                        //성공 시에  responseText를 가지고 array로 만드는 부분.
                        makeArrayFromString(res._response.responseText);
                    }
                }
            },
            timeout : 3,
            onerror :  jindo.$Fn(onAjaxError, this).bind()
        });
        oAjax.header("contentType","multipart/form-data");
        oAjax.header("file-name",encodeURIComponent(tempFile.name));
        oAjax.header("file-size",tempFile.size);
        oAjax.header("file-Type",tempFile.type);
        oAjax.request(tempFile);
    }
위코드는 오픈소스인 네이버 스마트에디터2 코드의 일부분입니다.
 
 // 서버에 파일 저장
                        InputStream in = request.getInputStream();
                        OutputStream out = new FileOutputStream(new File(saveFile));
                        byte bytes[] = new byte[Integer.parseInt(fileSize)];
 
                        int totalBytesRead = 0; // 읽은 총 바이트 수를 추적
 
                        // 입력 스트림에서 데이터를 읽기 전에 로그를 추가하여 데이터를 확인합니다.
                        int readBytes;
                        while ((readBytes = in.read(bytes)) != -1) {
                                totalBytesRead += readBytes;
                                log.info("Read {} bytes. Total bytes read so far: {}", readBytes, totalBytesRead);
                                out.write(bytes, 0, readBytes);
                        }
 
질문 내용 정리 : 멀티이미지 업로드를 구현 중입니다. 문제는 사진을 서버쪽에 저장을 하는데 계속 0KB의 사진만 저장이 됩니다.. 
3일 내내 관련 자료 찾고 해봤는데 도무지 해결이 안되네요...
혹시 해결하신분 있으신가요...?

이 질문에 댓글 쓰기 :

답변 1

왜 멀티 업로드 (이미지) 를 스마트 에디터로....?

직접 만드시는게 차라리 나으실텐데....

프로젝트 들어가기전에 준비하려고 하는데.. 로직이 무조건 스마트 에디터를 거치고 업로드 하기로 했습니다.. ㅠㅠ

어쩔수 없이 컨트롤러를 타지않고 jsp로 설정해서 끝냇습니다 ㅠㅠ

우선 멀티 업로드 자체에서 form submit 이 아닌 이상 또는 ajax 로 DB 처리 하는곳으로 가지 않는 이상 파일은 안들어 갑니다.
그러니 우선적으로 서버에 들어가는지 먼저 체크를 (즉, 들어갔다 해도 제대로 된 파일이 들어간건지...아님 0Kb파일이 들어간건지 체크 해보심이...)

죄송하지만 정확하게 에디터에 멀티업로드 처럼 에디터에 이미지를 넣을 경우 서버에 파일은 들어가지만 0Kb 이다 ...이런 말씀이실까요?

답변을 작성하시기 전에 로그인 해주세요.
QA 내용 검색
질문등록
전체 2,661
© SIRSOFT
현재 페이지 제일 처음으로