단순 파일 다운로드

1630 단어 파일 다운로드
프론트 데스크톱 ext 호출 방법
onDeclare : function() {
		
		window.open(this.MftDeclHeadAction + this.delcareReplenishManifest+"&manifestId="+this.mftDeclHeadForm.getForm().findField("manifestId").getValue());
}

this.MftDeclHeadAction + this.delcareReplenishManifest 액션으로 액세스 경로 구성
action 레이어
public ActionForward sendReplenishDoc(ActionMapping mapping, ActionForm form,HttpServletRequest request, HttpServletResponse response)throws Exception {
		if (request.getParameter("manifestId") != null) {
			String mftId = (String)request.getParameter("manifestId");
	      try {
		      StringBuffer documentBuffer = this.mftDeclManager.getReplenishDoc(mftId);
				response.setContentType("application/x-download");  
			    response.setHeader("content-disposition", "attachment;filename=" + java.net.URLEncoder.encode(mftId+".xml", "UTF-8"));
					byte[] bytes = documentBuffer.toString().getBytes("UTF-8");
				     BufferedInputStream bis = new BufferedInputStream(new ByteArrayInputStream(bytes));
				     OutputStream out = new BufferedOutputStream(response.getOutputStream());
				     int i=-1;
						while ((i = bis.read()) != -1) {
							out.write(i);
						}
						out.close();
						bis.close();
			}catch(Exception e){
				e.printStackTrace();
			}
			
		}
		return mapping.findForward("");
	}

documentBuffer는 다운로드할 파일 내용만 되돌려줍니다.

좋은 웹페이지 즐겨찾기