IReport Servlets

2 respostas
P

Bom a classe abaixo esta com erro na hora de carregar o arquivo *.jasper será que esta correto ?

package Servlets;
import java.io.*;
import java.sql.*;
import java.util.HashMap;
import javax.servlet.ServletException;
import javax.servlet.http.*;
import dori.jasper.engine.*;



public class HTTPGetServlet extends HttpServlet {

		private static Connection con2 = null;
		public static Connection getConexao() {
			 try{
			 		Class.forName("oracle.jdbc.driver.OracleDriver");
			 		con2 = DriverManager.getConnection("jdbc:oracle:thin:admBosch/[email protected]:1521:mccBosch");
			 		con2.setAutoCommit(true);
			 		System.out.println("Conectado no oracle");
			 		}catch (ClassNotFoundException cnfex){
			 				System.out.println("HTTPGetServlet::HTTPGetServlet:: O driver não foi carregado.");
			 				System.out.println(cnfex.getMessage());
			 		} catch (SQLException e){System.out.println("Erro: " + (String) e.getMessage());}
			 			return con2;
				}
		
		public void doGet( HttpServletRequest request, HttpServletResponse response ) throws ServletException, IOException
		{
				
				
			
			
			
			try{
					//Carrega o relatorio compila o arquivo jasper
					InputStream stream = getServletContext().getResourceAsStream("/4.jarper");
					JasperReport relatorio = JasperManager.loadReport(stream);
					//determina o nome do arquivo temporario
					String nomeArq = request.getSession().getId() + ".pdf";
					//executa o relatorio e salva no arquivo temporario
					JasperPrint impressao = JasperManager.fillReport(relatorio,new HashMap(),getConexao());
					//url onde o arquivo vai ser gerado
					String url = "/report/"+ nomeArq;
					JasperManager.printReportToPdfFile(impressao,url);
					//envia um redirect para o arquivo
					response.sendRedirect(url);
				}catch ( JRException jr)
				{
					jr.printStackTrace();
					System.out.println("Erro ::"+ jr);
				}
					
				
		}
		
}

2 Respostas

smota

não seria

?!?

claro que o arquivo 4.jasper deve estar no root do servletcontext.

P

Carregado o Arquivo Para na seguinte Linha:

JasperPrint impressao = JasperManager.fillReport(relatorio,new HashMap(),getConexao());
Criado 28 de abril de 2004
Ultima resposta 28 de abr. de 2004
Respostas 2
Participantes 2