2012-04-09 5 views
0

현재 데이터베이스에서 BLOB을 가져 와서 문서를 표시하는 문서 관리 시스템에서 작업하고 있습니다 (일반적으로 pdf이지만 중요하지 않음). 내 코드는 문서를 열 때 작동하지만 여는 후 파일을 저장하면 URL.pdf로 저장됩니다. 따라서 페이지의 URL이 파일을받을 경우입니다 : 다음 문서가 데이터베이스에서로드JSP 또는 자바 스크립트를 사용하여 URL 변경

get.jsp?doc=1 

이 잘 사용자에게 표시됩니다. 파일을 저장하려고하면

그러나, 기본 이름이

get.pdf 

로 온다 나는 데이터베이스에 저장되는 실제 문서 이름, 수를 싶습니다. 그렇게하기 위해 URL을 변경해야한다는 것을 알았지 만 문서가 사용자가 알지 못하는 이름을 유지할 수있는 한 다른 방식으로 작업해도 괜찮습니다. 나는 JSP를 사용하고있다. 미리 감사드립니다.

+0

코드 게시 plz – ControlAltDel

답변

0

응답 개체를 사용하여 작업을 수행 할 수 있습니다. "NAME_THE_FILE_HERE"을 파일의 이름을 원하는대로 바꾸십시오.

 httpServletResponse.setContentType("application/pdf"); 
     httpServletResponse.setHeader("Content-Disposition" , "attachment; filename=" + "NAME_THE_FILE_HERE"); 
+0

첨부 파일로 작동하지만 인라인으로 사용하고 싶습니다. 첨부 파일은 다운로드 대화 상자를 강제합니다. 사용자가 파일을보고 Adobe의 플러그인을 사용하여 파일을 저장할 수있는 옵션이 필요합니다. – Renegade91127

+0

어쩌면 내가 뭘 묻고 있는지 오해하고 있습니다. "첨부 파일"을 "인라인"으로 변경하면 "; 파일 이름 ="매개 변수는 그대로 둘 수 있습니다. httpServletResponse.setHeader ("Content-Disposition", "inline ; filename = "+"NAME_THE_FILE_HERE "); –

+0

그것이 내가 설정 한 방법입니다. 이 문제는 Adobe가 인라인으로 사용할 때 파일 이름을 인식하지 못하기 때문에 나타납니다. adobe를 사용하여 PDF를 저장하면 URL name.pdf와 함께 PDF가 저장됩니다. 열어보고 싶지만 어도비가 원래 이름으로 저장하기를 원합니다. 내 생각에, 이렇게하려면 URL을 더미로 변경해야합니다. 실제로는 존재하지 않지만 Adobe가 올바른 파일을 읽고 가져옵니다. – Renegade91127

관련 문제