Rodrigo_Sasaki 28 de mai. de 2013
Talvez você devesse tentar:System.out.println("DEPOIS PARAMETRO");
System.out.println("Incio: "+parametro.get("inicio"));
System.out.println("Fim: "+parametro.get("fim"));
System.out.println("Id: "+parametro.get("idTurma"));
Diego_Adriano 28 de mai. de 2013
Então, ai que esta a dúvida, pois depois de "inserir" os parâmetros no MAP eu chamo o relatório passando o MAP, e o relatório vem em branco com os parâmetro Null
try {
ServletOutputStream servletOutputStream = response.getOutputStream();
JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
JasperRunManager.runReportToPdfStream(reportStream,servletOutputStream,parametro,jrRS);
servletOutputStream.flush();
servletOutputStream.close();
}
Fiz um System.out só pra ver se estava carregado ...
Rodrigo_Sasaki 28 de mai. de 2013
Você tentou do jeito que eu disse? Se os valores forem impressos o problema não é o seu Map
Diego_Adriano 28 de mai. de 2013
Então, fiz como sugeriu … e realmente imprimi corretamente !!
Alguma idéia do que pode ser agora ?
Diego_Adriano 29 de mai. de 2013
Então, ainda não consegui resolver, será que alguém ai tem alguma ideia a sugerir ?
Vou postar o código todo ...
@SuppressWarnings ({ "static-access" , "unchecked" , "rawtypes" })
public void geraImpressao ( Long idTurma , Date inicio , Date fim ) throws ClassNotFoundException , SQLException {
Conexao conex = new Conexao ();
Connection conn = conex . getConnection ();
Statement stm = conn . createStatement ();
String SQL = " SELECT " +
" turma.`id` AS turma_id, " +
" turma.`nome` AS turma_nome, " +
" funcionario.`id` AS funcionario_id, " +
" funcionario.`nome` AS funcionario_nome, " +
" funcionario.`sobrenome` AS funcionario_sobrenome, " +
" cliente.`id` AS cliente_id, " +
" cliente.`nome` AS cliente_nome, " +
" cliente.`sobrenome` AS cliente_sobrenome, " +
" modalidades.`id` AS modalidades_id, " +
" modalidades.`nome` AS modalidades_nome, " +
" aula.`id` AS aula_id, " +
" aula.`dataAula` AS aula_dataAula, " +
" aula.`turma` AS aula_turma, " +
" presenca.`aluno` AS presenca_aluno, " +
" presenca.`aula` AS presenca_aula, " +
" presenca.`compareceu` AS presenca_compareceu " +
" FROM " +
" `funcionario` funcionario INNER JOIN `turma` turma ON funcionario.`id` = turma.`professor` " +
" INNER JOIN `modalidades` modalidades ON turma.`modalidade` = modalidades.`id` " +
" INNER JOIN `aula` aula ON turma.`id` = aula.`turma` " +
" INNER JOIN `presenca` presenca ON aula.`id` = presenca.`aula` " +
" INNER JOIN `cliente` cliente ON presenca.`aluno` = cliente.`id` " +
" WHERE " +
" aula.`dataAula` BETWEEN '" + inicio + "' AND '" + fim + "' " +
" AND " +
" turma.`id` = '" + idTurma + "' " ;
ResultSet rs = stm . executeQuery ( SQL );
FacesContext context = FacesContext . getCurrentInstance ();
HttpServletResponse response = ( HttpServletResponse ) context . getExternalContext (). getResponse ();
InputStream reportStream = context . getExternalContext ().
getResourceAsStream ( "/Relatorios_Jasper/PresencasOriginalCopia.jasper" );
Usuario sessao = new Usuario ();
HttpSession sessioon = ( HttpSession ) FacesContext . getCurrentInstance ()
. getExternalContext (). getSession ( false );
sessao = ( Usuario ) sessioon . getAttribute ( "usuario" );
System . out . println ( "ANTES PARAMETRO" );
System . out . println ( "Incio: " + inicio );
System . out . println ( "Fim: " + fim );
System . out . println ( "Id: " + idTurma );
Map parametro = new HashMap ();
parametro . put ( "idTurma" , idTurma );
parametro . put ( "inicio" , inicio );
parametro . put ( "fim" , fim );
parametro . put ( "usuario" , sessao . getNome (). toUpperCase ());
System . out . println ( "DEPOIS PARAMETRO" );
System . out . println ( "Incio: " + parametro . get ( "inicio" ));
System . out . println ( "Fim: " + parametro . get ( "fim" ));
System . out . println ( "Id: " + parametro . get ( "idTurma" ));
try {
ServletOutputStream servletOutputStream = response . getOutputStream ();
JRResultSetDataSource jrRS = new JRResultSetDataSource ( rs );
JasperRunManager . runReportToPdfStream ( reportStream , servletOutputStream , parametro , jrRS );
servletOutputStream . flush ();
servletOutputStream . close ();
} catch ( JRException e ) {
e . printStackTrace ();
} catch ( IOException e ) {
e . printStackTrace ();
} finally {
context . responseComplete ();
}
}