Bom da uma olhada ai no meu código.
[code]import java.io.InputStream;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.HashMap;
import java.util.Map;
import net.sf.jasperreports.engine.JRException;
import net.sf.jasperreports.engine.JRResultSetDataSource;
import net.sf.jasperreports.engine.JasperCompileManager;
import net.sf.jasperreports.engine.JasperFillManager;
import net.sf.jasperreports.engine.JasperPrint;
import net.sf.jasperreports.engine.JasperReport;
import net.sf.jasperreports.engine.design.JasperDesign;
import net.sf.jasperreports.engine.xml.JRXmlLoader;
import net.sf.jasperreports.view.JasperViewer;
/**
*
-
@author Administrador
*/
public class GerarRelatorios extends Exception{public Statement stm;
public ResultSet rs;
public String layout;
public GerarRelatorios() throws ExcRepositorio, SQLException, JRException {
conexao.pegarConexao();
pols();
ger(layout);}
public void ger (String layout) throws JRException, SQLException, ExcRepositorio {
JRXmlLoader.load( layout );
JasperDesign desenho = new JasperDesign();
JasperReport relatorio = JasperCompileManager.compileReport( desenho );
Connection con = conexao.pegarConexao();
stm = con.createStatement();
String sql = "SELECT funcionario.codass, nomefun, valor, nomeloja " +
"FROM funcionario " +
"LEFT JOIN lojas " +
“ON funcionario.codass = lojas.codass”;
rs = stm.executeQuery( sql );
Map parametros = new HashMap();
JRResultSetDataSource jrRS = new JRResultSetDataSource( rs );
JasperPrint impressao = JasperFillManager.fillReport( relatorio , parametros, con );
JasperViewer viewer = new JasperViewer( impressao , true );
viewer.show();
}
public static void main(String[] args) throws Exception {
try {
new GerarRelatorios();
} catch (Exception ex) {
ex.printStackTrace();
}
}
public void pols() throws ExcRepositorio, SQLException, JRException{
JasperPrint rel=null;
try{
Connection con = conexao.pegarConexao();
HashMap parametros = new HashMap();
String path = “report1.jasper”;
InputStream input = this.getClass().getClassLoader().getResourceAsStream(path);
rel = JasperFillManager.fillReport(input, parametros, con);
JasperViewer.viewReport(rel,true);
}catch (JRException e){
e.printStackTrace();
}
}
}[/code]
passei o dBug e ele so chega ate
JRXmlLoader.load( layout );
e para
o relatório é exibido mais sem os dados pois o código nem chega na SQL
ai ele da o tratamento de erro do main