Java desktop (Netbeans) + Crystal Reports

é galera… geralmente nao preciso recorrer a posts em foruns, porque sempre acho tudo q eu preciso …

Mas esse problema eu nao to conseguindo resolver e incrivelmente, nao sei porque, nao tem material sobre isso na internet. Tem até perguntas sobre em forums mas nenhuma resposta.

É o seguinte…

Estou desenvolvendo uma aplicação java desktop com o IDE netbeans e estou na fase de desenvolver relatórios.

Sempre programo com JasperReports, mas esse sistema q estou desenvolvendo tem tudo pronto em arquivos .rpt, do crystal reports, entao estou tentando apenas passar os parametros necessários por codigo e abrir o relatório.

Eu uso um banco de dados INFORMIX da IBM, baixei as bibliotecas (dlls e jars) necessárias e tudo mais, tentei vários jeitos de abrir o relatório e não consegui.

Eis o código que eu estou usando pra abrir o relatório:

           ReportClientDocument reportClientDoc = new ReportClientDocument();
            reportClientDoc.open(".\\relat\\sjr_recipago_r1.rpt", 0);
            ParameterFieldController paramController = reportClientDoc.getDataDefController().getParameterFieldController();
            paramController.setCurrentValue("","MyParamName","MyParamValue");//etc etc
            ByteArrayInputStream byteArrayInputStream = (ByteArrayInputStream)reportClientDoc.getPrintOutputController().export(ReportExportFormat.PDF);
            reportClientDoc.close();

Eis o erro que está me dando:

 detected an exception: Erro ao encontrar nome JNDI (ol_serv1)
	at com.crystaldecisions.reports.queryengine.Connection.t4(SourceFile:2997)
	at com.crystaldecisions.reports.dataengine.dfadapter.DFAdapter.a(SourceFile:696)
	at com.crystaldecisions.reports.dataengine.dfadapter.DFAdapter.for(SourceFile:706)
com.crystaldecisions.sdk.occa.report.lib.ReportSDKException: Erro ao encontrar nome JNDI (ol_serv1)---- Error code:-2147467259 Error code name:failed
	at com.crystaldecisions.reports.reportdefinition.ReportHelper.a(SourceFile:198)
	at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.if(SourceFile:237)
	at com.businessobjects.reports.sdk.requesthandler.ReportViewingRequestHandler.long(SourceFile:957)
	at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(SourceFile:147)
	at com.businessobjects.reports.sdk.requesthandler.ReportViewingRequestHandler.a(SourceFile:635)
	at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(SourceFile:128)
	at com.businessobjects.reports.sdk.requesthandler.ReportViewingRequestHandler.int(SourceFile:672)
	at com.businessobjects.reports.sdk.JRCCommunicationAdapter.do(SourceFile:1943)
	at com.businessobjects.reports.sdk.JRCCommunicationAdapter.if(SourceFile:660)
	at com.crystaldecisions.sdk.occa.report.application.PrintOutputController.export(SourceFile:111)
	at com.businessobjects.reports.sdk.JRCCommunicationAdapter.a(SourceFile:166)
	at com.businessobjects.reports.sdk.JRCCommunicationAdapter$2.a(SourceFile:528)
	at com.crystaldecisions.reports.sdk.PrintOutputController.export(SourceFile:54)

.......

“erro ao encontrar nome JNDI (nome_do_host)”…

Tudo bem eu sei oq q é JNDI e pra que serve tambem porem nao estou sabendo aplicar ele nesse código acima para ir junto ao relatório, nem mesmo dentro do CrystalReports.

Alguem pode dar um help ae?

eu boto fe em voces do GUJ!

abraços

e aii galeraa… ninguem?? nada??

nem uma ideia nem sugestao nada??

qualquer coisa eh bem vinda!!

moderadooorrr pro favor marcar esse post como [SEM SOLUÇÃO, RECOMPENSA PARA QUEM ACHAARR]

ehehehhehe

sem esperanças

Cara, onde vc está fazendo a conexão com o crystal? olhe atentamente os dados do banco que vc enviou ou no caso, se vc estiver rodando em um servidor verifique qual o nome da JNDI que vc deu para a conexão com o servidor ou a referencia do crystal.

meu irmao obrigado por respponder…

a conexao foi feita dentro no crystal, guardada no arquivo .rpt…

eu gostaria de um pedaço de codigo funcional ao inves de sugestoes ditas… acho q seria mais claro agil e facil…

Sei que o post é antigo, mas pode ajudar alguém…

Tive um problema recente do tipo, e o erro acontecia em vista da ausência do TO na parte “Data” do report.

Se por acaso mexer no bean de acesso, ou até mesmo na tabela e não der um refresh nos valores do relatório, o erro acontece, uma vez que ele não consegue encontrar os valores referidos… :slight_smile: