Download de arquivo zip através de uma página jsp

Olá pessoal,

Preciso dar um out num arquivo .zip que tenho através de uma jsp.
O problema eh que essa jsp receberá apenas o nome do arquivo que deve tentar abrir. Após isso deve abrir um file e apartir dai dar um write na jsp. Já alterei o content-type, mas ainda não está dando certo…
Como posso solucionar esse problema?
Segue em anexo o meu teste:

<%@ page import=“java.io.*” contentType=“application/zip” %>

<%
File fileName = (File) request.getAttribute(“fileName”);
FileInputStream fis;
BufferedOutputStream bos = new BufferedOutputStream(response.getOutputStream());
int i = 0;

if(fileName != null)
{
	byte[] bytes = new byte[256];
	fis = new FileInputStream(fileName);

	while( (i = fis.read(bytes)) > 0 )
	{
		bos.write(bytes, 0, i);
	}

	fis.close();
	bos.close();
}
else
{
	out.println("faiou");
}

%>

É uma péssima idéia tentar gerar conteúdo binário através de um jsp. Use um servlet pra isso.

mas nesse caso, como seria meu servlet???

[]s