ファイル ダウンロード サーブレットを作成し、以下のように web.xml に登録しました。
<servlet>
<servlet-name>downloadFile</servlet-name>
<servlet-class>com.hibu.HibuProspector.FileDwonloadServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>downloadFile</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
FileDownloadServlet.java
public class FileDownloadServlet extends HttpServlet{
private static final int BYTES_DOWNLOAD = 1024;
public void doGet(HttpServletRequest request,
HttpServletResponse response) throws IOException{
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setHeader("Content-Disposition",
"attachment;filename=SampleFile.xlsx");
ServletContext ctx = getServletContext();
InputStream is = ctx.getResourceAsStream("/SampleFile.xlsx");
int read=0;
byte[] bytes = new byte[BYTES_DOWNLOAD];
OutputStream os = response.getOutputStream();
while((read = is.read(bytes))!= -1){
os.write(bytes, 0, read);
}
os.flush();
os.close();
}
}
以下のようにhtmlページにリンクがあります。リンクをクリックすると、ファイルをダウンロードする必要があります。
<a class="button right" target="_blank">Download</a>
ダウンロード サーブレットをアンカーにリンクするにはどうすればよいでしょうか。
助言がありますか?