SubReport não aparece

Daew galera…
a minha duvida é a seguinte…

Eu tenho um relatório onde contém um subrelatório…
na hora de abrir pela aplicação…
ele aparece certinho… porém o subrelatório não…

na minha classe contém uma query…
e eu passo o JRResultSetDataSource como parametro…
no metodo JasperFillManager junto com o HashMap…

segue minha classe…

[code]public class RelResolCli{
private static final String dirSubRel = “D:\Java\Arquivos\Assinf\SubRelResolCli.jasper”;
private static final String dirXRML = “D:\Java\Arquivos\Assinf\RelResolCli.jrxml”;
private static final String dirjasper = “D:\Java\Arquivos\Assinf\RelResolCli.jasper”;
private int codigo = 0;
public void gerarRelatorio() throws ClassNotFoundException, SQLException,
JRException, Exception {
Connection conn = null;
ConnectionManager manager = ConnectionManager.getInstance();
conn = manager.getConnection();
String query = “select * from tabCliente where codigo = ?”;
PreparedStatement stmt = conn.prepareStatement(query);
stmt.setInt(1, codigo);
ResultSet rs = stmt.executeQuery();
JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);
Map parameters = new HashMap();
parameters.put(“SUREPORT”, dirSubRel);
JasperPrint impressao = JasperFillManager.fillReport(dirjasper, parameters, jrRS);
try {
JasperViewer viewer = new JasperViewer(impressao, true);
viewer.setVisible(true);
} catch(Exception ex) {
System.out.println(ex.getMessage());
}
}

public int getCodigo() {
    return codigo;
}

public void setCodigo(int codigo) {
    this.codigo = codigo;
}

public static void main(String[] args) throws JRException, Exception {
    new RelResolCli().gerarRelatorio();
}

}[/code]

se eu passo o conn como parametro…
o subrelatorio aparece…
mas a query não é executada…
ai não me adianta de nada…

alguem tem idéia de como arrumar isso!?:

agradeço desde já.

… alguem!?

Voce já testou a query do seu subreport pra ver se retorna algo ?
Cara é realmente complicado ajudar em um caso desses…

Valeu? Até… :thumbup:
[s]

Complicado… mostra algum erro?
Já viu esse tópico http://www.guj.com.br/posts/list/24893.java

Sim…
o erro que me mostra é esse…

30/03/2006 10:23:45 net.sf.jasperreports.engine.fill.JRFillDataset createDataSource WARNING: The supplied java.sql.Connection object is null.

Eu estou passando o DataSource como parametro…
ao invés do conn…

a query funciona corretamente, porém o subrelatorio não aparece.
eu tenho dois selects
um nu report e outro no subreport

se eu passar o conn como parametro, ele me mostra o subrelatorio
mas ai esta query não funciona,

String query = "select * from tabCliente where codigo = ?";

ai não aparece o cliente selecionado!
pode ver que a query está com um indice, para fazer a busca do cliente específico (Onde mostra as pendencias)…

Bom… vo fuça mais aqui
vamos ver no que dá!

obrigado a atenção!

;]

[quote]30/03/2006 10:23:45 net.sf.jasperreports.engine.fill.JRFillDataset createDataSource
WARNING: The supplied java.sql.Connection object is null.[/quote]

Isso nao te diz nada ? :roll:

Valeu? Até… :thumbup:
[s]

Seria pq eu não tou passando o conn como parametro!?
não é!?

e sim o jrRS como parametro!..

Esse DataSource é obtido por JNDI?
Verifique por que o DataSource está sendo passado null. O problema esta ai

Estou com um problema parecido entao mudei o parametro connection para DataSource criando uma classe chamada DSComparativoMedia e implementando o JRDataSource. Existem dois métodos abstratos e criei um chamado createDataSource, criei uma nova conexao apartir dessa classe no iReport.