问题描述
水晶报表2008的模板,JAVA无法调用(提示版本9之前不支持);使用水晶报表9或10打开后,JAVA可以调用,但报错如下:log4j:WARNNoappenderscouldbefoundforlogger(com.businessobjects.reports.sdk.JRCCommunicationAdapter).log4j:WARNPleaseinitializethelog4jsystemproperly.com.crystaldecisions.sdk.occa.report.lib.ReportSDKException:查找JNDI名称(tprd)时出错----Errorcode:-2147467259Errorcodename:failed另使用水晶报表9或10新建的报表能成功调用(但是现有很多复杂报表模板,如全部重构实在是力不从心了。。。)代码如下:finalStringREPORT_NAME="E:/ReportTemplate.rpt";try{//打开报表ReportClientDocumentreportClientDoc=newReportClientDocument();reportClientDoc.open(REPORT_NAME,0);StringexportFile="D:/testexport.pdf";ReportExportFormatformatPDF=null;formatPDF=ReportExportFormat.PDF;ByteArrayInputStreambyteArrayInputStream=(ByteArrayInputStream)reportClientDoc.getPrintOutputController().export(formatPDF);reportClientDoc.close();reportClientDoc=null;intavail=byteArrayInputStream.available();if(avail>1<<23)avail=1<<23;bytebyteArray[]=newbyte[avail];BufferedOutputStreamout=newBufferedOutputStream(newFileOutputStream(exportFile));intlen=0;while((len=byteArrayInputStream.read(byteArray))>0){out.write(byteArray,0,len);}byteArrayInputStream.close();out.close();System.out.println("test");}catch(ReportSDKExceptionex){System.out.println(ex);}catch(Exceptionex){System.out.println(ex);}特此求助,先谢谢了!