Galera, boa tarde.
Tenho dentro de um dao, o seguinte código que me gera uma folha de relatório status de cada tipo de os: Aberta, Atendendo e finalizadas.
public void relatorioDeOs(int situacao) throws JRException {
Connection con = ConnectionBank.getConnetion();
PreparedStatement pstm = null;
ResultSet rs = null;
try
{
pstm = con.prepareStatement("select\n" +
" os.Cod as CodOs,\n" +
" os.Problema,\n" +
" os.FkTipo as CodTipo,\n" +
" t.Descricao as Tipo,\n" +
" os.FkSetor as CodSetor,\n" +
" s.Descricao as Setor,\n" +
" os.FkPrioridade as CodPrioridade,\n" +
" p.Descricao as Prioridade,\n" +
" os.FkSituacao as CodSituacao,\n" +
" st.Descricao as SituacaoOs,\n" +
"os.Excluido as Excluido,\n"+
" l.Cod as CodColaborador,\n" +
" l.Loguin as Colaborador\n" +
"from \n" +
" os as os\n" +
"join tipo as t\n" +
"on os.FkTipo=t.Cod\n" +
"join setor as s\n" +
"on os.FkSetor=s.Cod\n" +
"join prioridade as p\n" +
"on os.FkPrioridade=p.Cod\n" +
"join situacao as st\n" +
"on os.FkSituacao=st.Cod\n" +
"join loguin as l\n" +
"on os.FkLoguin=l.Cod\n" +
"where os.FkSituacao="+situacao+" and os.Excluido='N';");
rs = pstm.executeQuery();
JRResultSetDataSource relatorio = new JRResultSetDataSource(rs);
try
{
File jasper = new File(getClass().getResource("/br/com/cesmg/relatorios/RelatorioOs.jasper").toURI());
JasperPrint jp = JasperFillManager.fillReport(jasper.getAbsolutePath(), new HashMap(), relatorio);
JasperViewer jv = new JasperViewer(jp, false);
jv.setVisible(true);
} catch (URISyntaxException e) {
JOptionPane.showMessageDialog(null, "Erro na manipulação do relatório, relatorioDeOs(int situacao): "+e, "Erro ao gerar relatório.", JOptionPane.ERROR_MESSAGE);
}
} catch(SQLException e) {
JOptionPane.showMessageDialog(null, "Relatorio não pode ser impresso."+e, "Erro ao gerar relatório.", JOptionPane.ERROR_MESSAGE);
}
finally {
ConnectionBank.closeConnection(con, pstm, rs);
}
}
Esse relatório é exibido normalmente, se estou executando o projeto pela IDE.
Porém, se pego o meu .JAR gerado após a compilação do projeto, o sistema abre normalmente, mas não mostra o relatório.
Como fazer para que funcione executando apenas o . JAR?