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:
[color=red]
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("8576080869");
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("8589535339");
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("8573934263");
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";
}
}[/color]