사용자 도구

사이트 도구


java:servlet:download

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
java:servlet:download [2011/11/09 13:59]
kwon37xi
java:servlet:download [2012/09/17 10:54] (현재)
kwon37xi
줄 106: 줄 106:
     String userAgent = request.getHeader("User-Agent");     String userAgent = request.getHeader("User-Agent");
          
 +    // attachment; 가 붙으면 IE의 경우 무조건 다운로드창이 뜬다. 상황에 따라 써야한다.
     if (userAgent != null && userAgent.indexOf("MSIE 5.5") > -1) { // MS IE 5.5 이하     if (userAgent != null && userAgent.indexOf("MSIE 5.5") > -1) { // MS IE 5.5 이하
       response.setHeader("Content-Disposition", "filename=" + URLEncoder.encode(filename, "UTF-8") + ";");       response.setHeader("Content-Disposition", "filename=" + URLEncoder.encode(filename, "UTF-8") + ";");
줄 132: 줄 133:
         outs.write(buffer, 0, read);         outs.write(buffer, 0, read);
       }       }
 +    } catch (IOException ex) {
 +        // Tomcat ClientAbortException을 잡아서 무시하도록 처리해주는게 좋다.
     } finally {     } finally {
       try {       try {
줄 150: 줄 153:
   - 추가(2010/08/30) : response.setHeader("Content-Transfer-Encoding", "binary"); 도 함께 할 것.   - 추가(2010/08/30) : response.setHeader("Content-Transfer-Encoding", "binary"); 도 함께 할 것.
   - 추가(2011/11/09) : userAgent null 체크 추가. 가끔 웹 다운로더 플러그인들이 User-Agent 헤더를 안보내주는 현상이 있다.   - 추가(2011/11/09) : userAgent null 체크 추가. 가끔 웹 다운로더 플러그인들이 User-Agent 헤더를 안보내주는 현상이 있다.
 +  - 추가(2012/07/23) : Content-Disposition 헤더 값의 문자열 중에 IE의 경우 "attachment;"가 있어야 다운로드 창이 뜬다. 아니면 MimeType이 ''application/octet-stream'' 일지라도 파일명의 MimeType에 따라 행동한다.
java/servlet/download.1320814765.txt.gz · 마지막으로 수정됨: 2011/11/09 13:59 저자 kwon37xi