설치는 다음과 같이 4단계로 있고, 비교적 쉽고 간단합니다.
라이브러리파일은 'WEB-INF/lib' 디렉토리에 복사해 넣습니다. 그리고 /uploadprogress라는 디렉토리를 만들고, 그곳에 애플릿 파일을 풀어 넣습니다.
업로드 폼이 있는 소스를 열어서, 적당한 곳에 다음과 같은 소스를 넣어 애플릿을 넣습니다.
<applet code="mty.uploadprogress.Progress.class" codebase="uploadprogress" name="progressapplet" width="361" height="32" id="progressapplet" MAYSCRIPT> </applet>
codebase값은 적당하게 변경해 주어야 합니다. 즉 Html문서에서 애플릿 압축을 푼 디렉토리의 경로(상대경로 또는 절대경로)를 적어주어야 합니다. 예로 압축을 /uploadprogress에 풀었고, 문서가 /doc/uploadform.html 있다면, ../uploadprogress또는 /uploadprogress라고 적어야 합니다.
width와 height의 값을 원하는데로 적당하게 변경하여 주시면 됩니다.
폼에 onSubmit속성이 없는경우는
<form name="addForm" method="post" action="uploadaction.jsp" enctype="multipart/form-data"
onSubmit="try { document.applets['progressapplet'].connect(); } catch(e) { }" target="uplaod">
폼에 onSubmit이 있는 경우는 Form이 실행되기 전에(return true;코드 전에) 다음과 같은 소스를 넣습니다.
try {
document.applets['progressapplet'].connect();
} catch(e) {
}
파일을 업로드하는 소스를 열어서, 실제로 업로드를 하기 전에, 업로드하는 프로그램(라이브러리)에 지정하는 'request'값을 변경하여 지정하여 준다. 즉 다음과 같이 두부분을 수정하여 주면 됩니다.
첫째로, <%@ page import=" ... , mty.uploadprogress.UploadProgress"%>로써, 페키지이름을 Import하여 주고,
그 다음, request대신 UploadProgress.getServletRequest(request)을 사용하여 업로드 하이브러리에 제공하여 주면 됩니다.
예1) Jakarta commons fileupload패키지에서는
upload.parseRequest(request);라는 부분을
-> upload.parseRequest(UploadProgress.getServletRequest(request)); 으로 바꾸어 주어야 합니다.
예2) com.orelly.servlet페키지를 사용하시는 분들은
MultipartRequest multi = new MultipartRequest( request, webroot+"WEB-INF/temp", sizeLimit, new DefaultFileRenamePolicy() ); 라는 부분을
->MultipartRequest multi = new MultipartRequest( UploadProgress.getServletRequest(request), webroot+"WEB-INF/temp", sizeLimit, new DefaultFileRenamePolicy() ); 으로 바꾸어 주어야 합니다.