Caminho do arquivo .Jasper ao gerar relatório!

0 respostas
J

Eu fiz um relatório, funcionou tudo beleza eu executando ele na minha maquina, agora vou colocar no servidor via FTP.

Configuei o servlet no web.xml tudo certo, coloquei o arquivo .class na pasta /WEB-INF/classes/br/com/teste/web/

Mas na hora que executo o servlet ele não gera o relatório da erro na no caminho do arquivo .JASPER.

O arquivo esta na pasta /WEB-INF/classes/br/com/teste/web/Livros.jasper
E no .class esta esse caminho, ta tentei colocar em outros locais e não consigo.

Eu acho que o problema e só no caminho do arquivo .JASPER que ele não esta encontrando e por isso não gera o relatório.

Alguem pode me ajudar?!

Logo abaixo tem o código:

import java.io.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;

import javax.servlet.*;
import javax.servlet.http.*;
import net.sf.jasperreports.engine.JasperExportManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.data.JRBeanCollectionDataSource;




public class Teste extends HttpServlet {
    
  
    public List getLivros() {
		List listaLivros = new ArrayList();
		Livro livro = new Livro();

		livro.setTitulo("Use a cabeça! Padrões de Projeto - Design Patterns");
		livro.setAutor("Freeman, Eric / Freeman, Elisabeth");
		livro.setIsbn("[telefone removido]");
		livro.setEditora("Alta Books");
		livro
				.setDescricao("Como você sabe que não quer reinventar a roda (ou, "
						+ "pior, um pneu furado), "
						+ "então você busca padrões de projetos");
		listaLivros.add(livro);

		livro = new Livro();
		livro.setTitulo("Entendendo e Dominando o Linux");
		livro.setAutor("Morimoto, Carlos");
		livro.setIsbn("[telefone removido]");
		livro.setEditora("Digerati");
		livro
				.setDescricao("Como o nome diz, este livro é uma obra destinada a "
						+ "todos aqueles que "
						+ "pretendem conhecer na prática e em detalhes os "
						+ "principais recursos oferecidos pelo Linux");
		listaLivros.add(livro);

		livro = new Livro();
		livro.setTitulo("Guia de Certificação em Java - Exame CX-310-035");
		livro.setAutor("Pereira, Rafael");
		livro.setIsbn("[telefone removido]");
		livro.setEditora("Ciência Moderna");
		livro.setDescricao("Este Guia de Certificação em Java é um livro "
				+ "fundamental para preparar os"
				+ " candidatos ao exame de programador Java da Sun, "
				+ "a primeira e mais "
				+ "requisitada certificação desta tecnologia.");
		listaLivros.add(livro);

		return listaLivros;
	}
    
    protected void processRequest(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        
        /*
        response.setContentType("text/html;charset=UTF-8");
        PrintWriter out = response.getWriter();
        // TODO output your page here
        out.println("<html>");
        out.println("<head>");
        out.println("<title>Servlet Teste</title>");
        out.println("</head>");
        out.println("<body>");
        out.println("<h1> TESTE DE SERVLETs  - JÚNIOR!!! </h1>");
        out.println("</body>");
        out.println("</html>");
         
        out.close(); */
    }
    
    // <editor-fold defaultstate="collapsed" desc="HttpServlet methods. Click on the + sign on the left to edit the code.">
    /** Handles the HTTP <code>GET</code> method.
     * @param request servlet request
     * @param response servlet response
     */
    protected void doGet(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
        doPost(request, response);
    }
    
    /** Handles the HTTP <code>POST</code> method.
     * @param request servlet request
     * @param response servlet response
     */
    protected void doPost(HttpServletRequest req, HttpServletResponse res)
            throws ServletException, IOException {
        
                              
        try {

				List listaLivros = getLivros();
                                JRBeanCollectionDataSource ds = new JRBeanCollectionDataSource(listaLivros);
				HashMap parameters = new HashMap();
				JasperPrint print = JasperFillManager.fillReport("/WEB-INF/classes/br/com/teste/web/Livros.jasper", parameters, ds);
				byte[] bytes = JasperExportManager.exportReportToPdf(print);
   			        res.setContentType("application/pdf");
 			        res.setContentLength(bytes.length);
 			        ServletOutputStream ouputStream = res.getOutputStream();
 			        ouputStream.write(bytes, 0, bytes.length);
 			        ouputStream.flush();
 			        ouputStream.close();
                                
                                JasperExportManager.exportReportToPdfFile(print, "c:\\rapaz.pdf");
                                JasperExportManager.exportReportToHtmlFile(print, "c:\\rapaz.html");  
                                    
		} catch (Exception e) {
                    
			res.setContentType("text/html;charset=UTF-8");
                        PrintWriter out = res.getWriter();
                        
                        out.println("<html>");
                        out.println("<body>");
                                            
                        out.println("<h1> PROBLEMA : "+e.getMessage()+" </h1> <br>");
                        
                        out.println("</body>");
                        out.println("</html>");
                         out.close();
		}

    }
    
    /** Returns a short description of the servlet.
     */
    public String getServletInfo() {
        return "Short description";
    }
    // </editor-fold>
}
Criado 21 de setembro de 2006
Respostas 0
Participantes 1