Relatório e Sub-relatório não abre no Java, apenas no iReport

2 respostas
Moiseis_Lopes

Bom dia meus caros, Preciso muito de ajuda. Criei o relatório, o chamei pelo aplicação e ele retorna sem problemas, quando inseri o sub-relatório ele não carrega nada. Ja busquei muitos tutoriais mas nada que resolvesse o problema…
Retorna o seguinte erro:
"Erro no relatório! net.sf.jasperreports.engine.JRE: Language “null” not supported by this report compiler.
Expecting “java” instead."

Como faço para passar esse dado? ou talvez criei o sub-relatório errado…
Se eu for no iReport e chamar o relatório ele imprime corretamente.

2 Respostas

guivirtuoso

Tenta dar uma olhada nas propriedades desse jrxml dentro do iReport ou edita pelo Notepad mesmo…
Se nao me engano tem na parte de i18n ou na aba “Mais…” (Dependendendo da versao) uma opção sobre a Language.

Abs

Moiseis_Lopes

Bom dia novamente amigo. Primeiro muito obrigado pela ajuda e acho que estava correto pois, passamos para outro problema.
veja meus códigos:

public void modelorel(){
        conBanco = new ConexaoOracle();
        conBanco.conectaOracle();
        codsql="SELECT A.NUMPED,D.CODCLI,D.RAZAOCLI,D.FANTCLI,D.CNPJCLI,D.IECLI,D.ENDCLI,D.NUMCLI,D.COMPCLI " +
                ",D.BAIRROCLI,D.CIDADECLI,D.UFCLI,D.CEPCLI,D.FONECLI,E.CODENT,E.FANTENT,A.POSICAO,F.CODCOB,F.DESCRICAO AS COBRANCA " +
                ",G.CODRCA,G.RCA,H.CODPL,H.DESCRICAO AS PLANO,A.TOTAL AS TOTALPEDIDO,B.ITEM,B.CODPROD,C.DESCRICAO AS PRODUTO " +
                ",C.EAN,B.PTABELA,B.PVENDA,B.QTPROD,B.DESCONTO,B.IPI,B.PESOLIQ AS PLIQPROD,B.PESOBRUT AS PBRUTPROD,B.TOTAL AS TOTALPROD " +
                ",A.PESOLIQ AS PESOLIQUIDO,A.PESOBRUT AS PESOBRUTO,B.ICMS AS ICMS,B.SUBTOTAL AS SUBTOTAL,A.DTPEDIDO " +
                "FROM PEDIDO A, PEDID B, PRODUTO C,PARCEIRO D, ENTIDADE E, COBRANCA F, RCA G, PLANO H " +
                "WHERE A.NUMPED=B.NUMPED AND A.CODENT=E.CODENT " +
                "AND A.CODCLI=D.CODCLI AND B.CODPROD=C.CODPROD " +
                "AND A.CODCOB=F.CODCOB AND A.CODRCA=G.CODRCA " +
                "AND A.CODPL=H.CODPL AND A.NUMPED="+Pedido;      "
        
        try{
            conBanco.executeSQL(codsql);
            JRResultSetDataSource jrRS = new JRResultSetDataSource(conBanco.resultset);
            HashMap map = new HashMap();
            map.put("SUBREPORT_DIR","C:/Programas/Programa/rel/");
            JasperDesign jasperDesign = JRXmlLoader.load("C:/Programas/Programa/rel/PedidoCompra.jrxml");
            JasperReport jasperReport = JasperCompileManager.compileReport(jasperDesign);
            JasperPrint jasperPrint = JasperFillManager.fillReport(jasperReport, map, jrRS);
            JasperViewer.viewReport(jasperPrint, false);    
       }
       catch(JRException erro){  
           JOptionPane.showMessageDialog(null,"Erro no relatório!"+erro);  
       }
        conBanco.desconectaOracle();
    }

Agora uma parte do erro :

Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException: cannot assign instance of net.sf.jasperreports.engine.base.JRBaseStaticText to field net.sf.jasperreports.engine.base.JRBaseLineBox.boxContainer of type net.sf.jasperreports.engine.JRBoxContainer in instance of net.sf.jasperreports.engine.base.JRBaseLineBox
    	at java.io.ObjectStreamClass$FieldReflector.setObjFieldValues(ObjectStreamClass.java:2089)
    	at java.io.ObjectStreamClass.setObjFieldValues(ObjectStreamClass.java:1261)
    	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1999)
    	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918)
    	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801)
    	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
    	at java.io.ObjectInputStream.defaultReadFields(ObjectInputStream.java:1993)
    	at java.io.ObjectInputStream.readSerialData(ObjectInputStream.java:1918)
    	at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java:1801)
    	at java.io.ObjectInputStream.readObject0(ObjectInputStream.java:1351)
    	at java.io.ObjectInputStream.readObject(ObjectInputStream.java:371)
    	at java.util.ArrayList.readObject(ArrayList.java:776)
    	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
Criado 21 de janeiro de 2016
Ultima resposta 24 de jan. de 2016
Respostas 2
Participantes 2