Relatorio em Java criados no iReport 3.0.0

Bom dia!
Estou tentando fazer um relatório com subrelatório em Java e IReport, mas não estou conseguindo chamar o subrelatório.
O meu relatório principal se chama compras e o subrelatorio comprassubrelatorio, o relatório está sendo filtrado pelo número do pedido “getPedComCodigo()”, no IReport funciona, mas cahamando pelo Java, não funciona.
Preciso de Ajuda, Obrigado

public void relatorioPedidoCompras(PedidoCompraVO q) throws ClassNotFoundException, SQLException, JRException   
            {   
            String pdf = "c:\geff\relatorios\compras.pdf";   
            String relat = "c:\geff\relatorios\compras.jasper";   
            String relatsub = "c:\geff\relatorios\comprassubrelatorio.jasper";   
              
  
            String driver = "org.postgresql.Driver";   
            String url = "jdbc:postgresql://"localhost":5432/geff";   
            String login = "Alex";   
            String senha = "mattos";   
            Class.forName(driver);   
            Connection conn = DriverManager.getConnection(url,login,senha);   
            conn.setAutoCommit(false);   
            PreparedStatement consulta = conn.prepareStatement( "SELECT p.pedcomcodigo, p.pedcomdata, c.clinome, p.pedcomvaltotal, p.pedcomcondpagamento, p.pedcompraentrega, p.pedcomfrete, p.pedcomimpostos, p.pedcomobservacoes, p.pedresponsavel FROM pedidocompra p,clientes c WHERE p.clicodigo=c.clicodigo and p.pedcomcodigo='"+q.getPedComCodigo()+"';");   
            ResultSet rs = consulta.executeQuery();   
  
            JRResultSetDataSource jrRS = new JRResultSetDataSource(rs);   
  
            PreparedStatement consulta2 = conn.prepareStatement( "SELECT DISTINCT i.procodigo, i.itepedcomdescricao, i.itepedcomquantidade, i.itepedcomunidade, i.itepedcomvlrunitario, i.itepedcomvlrtotal  FROM itenspedcompra i, pedidocompra p WHERE i.pedcomcodigo='"+q.getPedComCodigo()+"';");   
            ResultSet rs2 = consulta2.executeQuery();   
  
            JRResultSetDataSource jrRSS = new JRResultSetDataSource(rs2);   
            HashMap parameters = new HashMap();   
  
            parameters.put("SUBREPORT_DIR", relatsub);   
            parameters.put("REPORT_CONNECTION",jrRSS);   
  
            String impressao = JasperFillManager.fillReportToFile(relat, parameters, jrRS );   
            JasperViewer.viewReport("c:\geff\relatorios\compras.jrprint",false,false);   
            JasperExportManager.exportReportToPdfFile(impressao, pdf);   
            conn.rollback();   
            consulta.close();   
        }  
erro:   
  
Erro  Incompatible net.sf.jasperreports.engine.JRResultSetDataSource value assigned to parameter REPORT_CONNECTION in the compras dataset.