ServletOutputStream stream = null; BufferedInputStream buf = null; try { stream = response.getOutputStream(); File mp3 = new File(“/myCollectionOfSongs” + “/” + fileName);
//set response headers
response.setContentType("audio/mpeg");
response.addheader("Content-Disposition", "attachment; filename=" + fileName);
response.setContentLength((int) mp3.length());
FileInputStream input = new FileInputStream(mp3);
buf = new BufferedInputStream(input);
int readBytes = 0;
//read from the file; write to the ServletOutputStream
while ((readBytes = buf.read()) != -1)
stream.write(readBytes);
} catch (IOException ioe) {
throw new ServletException(ioe.getMessage());
} finally {
if (stream != null)
stream.close();
if (buf != null)
buf.close();
}