Quero gerar um relatório em pdf com o jasper reports e servlets. Eu já consegui fazer, e funcionou, mas agora e
estou em um projeto que não utiliza connection e sim session e o comando que
gera o relatório exige um Connection. Como posso resolver este problema?
Eu vi que a session possui um método connection, mas esta depreacated e e não roda com ele, já testei:
Connection connect = null;
try {
Class.forName("com.mysql.jdbc.Driver");//ou o driver da sua base de dados
connect = (Connection) DriverManager.getConnection("jdbc:mysql://localhost:3306/baseDeDados", "usuario", "senha");
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, ex.getMessage());
System.exit(0);
}
Daí creio que voce consiga gravar este connect num parametro da sessão e pegá-lo pelo.
Na realidade a linha comentada: //Connection conn = new ConnectionFactory().getConnection();
chama minha ConectionFactory que faz justamente o que vc sugeriu, ela cria uma nova conexão.
Mas o que realmente está complicando é que por eu estar trabalhando com Hibernate passo a trabalhar com session´s e não com
Connection´s;
Eu esperava crira uma nova sessão, conforme abaixo, e passá-la para o jasperreports:
Estou com um problema e acho que você pode me responder. Estou tentando trabalhar com JasperView e Servlet. Quando gero relatórios e mando apresentar no JasperView, em uma máquina cliente, ele apresenta no servidor e não na máquina que solicitou. O que tenho conseguido apenas é mostrar o PDF, mas gostaria de exibir no JasperView dando as opções para o usuário, gravar ou não, no formato que quiser.
O JasperView é uma classe ligada ao desenvolvimento JSE ou, sendo mais claro, desktop.
Você não poderá usar um JasperView utilizando servlets.
Se pesquisar no google verá exemplos bem claros e bons sobre como fazer isso.
P.S.: Observe a data do tópico em que você está inserindo um novo comentário, este é bem antigo e normalmente não terá respostas. Nestes casos é preferível abrir um novo tópico.