Implementação de Download pelo Struts

Olá,

Estou tendo dificuldades para implementar o download de arquivos através do struts num determinado servidor linux .Estou usando o código abaixo, ele funciona bem em um servidor mas ao migrar para outro servidor ele deixa de funcionar, isto é, quando faço a solicitação de download a aplicação mostra o arquivo solicitado sendo baixado para o desktop mas ao verificar seu conteúdo ele está vazio!.Até onde eu sei não há diferenças de configuração de um servidor para outro. Alguém saberia apontar o motivo porque isso ocorre, se eu devo adaptar o código para um determinado servidor linux e como fazer isso?

Muito Obrigada

            if (strAction.equals("download")) {
                String detail = (String) request.getParameter("detail");

                String pathToUploads = request.getSession().getServletContext().getRealPath("/post/uploads");

                File file = new File(pathToUploads + System.getProperty("file.separator") + detail);
                response.setContentLength((int) file.length());
                response.setContentType("application/octet-stream");
                response.setHeader("Content-disposition", "attachment; filename=" + URLEncoder.encode(file.getName(), "UTF-8"));
                response.setHeader("Cache-Control", "max-age=600");
                ServletOutputStream outStream = response.getOutputStream();
                byte[] b = new byte[(int) file.length()];


                try {
                    FileInputStream fileInputStream = new FileInputStream(file);
                    fileInputStream.read(b);

                } catch (FileNotFoundException e) {
                    System.out.println("File Not Found.");
                    e.printStackTrace();
                }

                outStream.write(b);
                outStream.flush();
                outStream.close();

                findForward = "download";
            }