2013-04-24 2 views
0

Java EE 응용 프로그램에서 csv 이미 터 플러그인을 사용하고 싶습니다. 가능한가? 나는 다음과 같은 오류가 발생합니다 :BIRT csv emitter 및 EJB

org.eclipse.birt.report.engine.api.UnsupportedFormatException: The output format csv is not supported. 
at org.eclipse.birt.report.engine.api.impl.EngineTask.setupRenderOption(EngineTask.java:2047) 
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.doRun(RunAndRenderTask.java:96) 
at org.eclipse.birt.report.engine.api.impl.RunAndRenderTask.run(RunAndRenderTask.java:77) 

내 코드 :

protected String generateReportFile(IRunAndRenderTask task, IReportRunnable design, IReportEngine engine, String reportType, String reportPrefix, String baseDir) throws BirtReportGenerationFault { 
     CSVRenderOption csvOptions = new CSVRenderOption(); 

     csvOptions.setOutputFormat(CSVRenderOption.OUTPUT_FORMAT_CSV); 

     csvOptions.setOutputFileName("C:/birt/logs/csvTestW.csv"); 

     csvOptions.setShowDatatypeInSecondRow(false); 

     csvOptions.setExportTableByName("data"); 

     csvOptions.setDelimiter("\t"); 

     csvOptions.setReplaceDelimiterInsideTextWith("-"); 

     task.setRenderOption(csvOptions);    
     task.setEmitterID("org.eclipse.birt.report.engine.emitter.csv"); 

     try { 
      task.run();// Error here 
     } catch (EngineException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
     task.close(); 


    return "C:/birt/logs/csvTestW.csv";//fileName; 
    } 

같은 코드는 자바 SE 응용 프로그램에서 작동합니다.

+0

를 사용하려고 사용

? 여기에서 다운로드하지 않은 경우 https://code.google.com/a/eclipselabs.org/p/csv-emitter-birt-plugin/downloads/list –

+0

예. 경로를 빌드하기 위해 플러그인이 추가되었습니다. 내 코드에서 볼 수 있듯이이 플러그인에서 org.eclipse.birt.report.engine.emitter.csv.CSVRenderOption 클래스를 사용하고 있습니다. – Blind

답변

0

동일한 문제가 있지만 PDF 형식입니다. 나는 org.eclipse.birt.report.engine.emitter.pdf를 플러그인 종속성에 추가하여이를 해결했다.

0

여기서 문제는 CSVRenderOptions로 전달되는 출력 형식의 경우입니다. 대신 csvOptions.setOutputFormat(CSVRenderOption.OUTPUT_FORMAT_CSV);
당신이 플러그인 emiter csv로이 있습니까 csvOptions.setOutputFormat("CSV");