import java.util.*;
import javax.servlet.http.*;
import org.apache.struts.Globals;
import org.apache.struts.action.*;
import org.apache.log4j.Logger;
import com.gd.presenter.web.object.*;
import com.gd.presenter.web.cache.*;
import com.gd.presenter.web.client.common.*;
import java.io.BufferedInputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletOutputStream;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class StreamAction extends Action
{
private static Logger logger = Logger.getLogger(StreamAction.class.getName());
public ActionForward execute(ActionMapping mapping, ActionForm form, HttpServletRequest request, HttpServletResponse response) throws Exception
{
String browserType = (String)request.getAttribute(“browserType”);
String forwardMapping = “success_” + browserType;
ServletOutputStream stream = null;
BufferedInputStream buf = null;
try
{
stream = response.getOutputStream();
File mp3 = new File(“C:\\a.mp3″);
response.setContentType(“audio/mpeg”);
response.setHeader(“Content-Disposition”,”attachment; filename=Template.mp3″);
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(Exception e)
{
logger.info(“eerror = ” , e);
}
finally
{
if (stream != null)
stream.close();
if (buf != null)
buf.close();
}
logger.info(“action forward to [" + forwardMapping + "]“);
return mapping.findForward(forwardMapping);
}
}
Thanks for information.
many interesting things
Celpjefscylc
Comment by celpjefscycle — January 12, 2008 @ 9:15 am