我使用的是birt版本3.7.0。
我正在尝试创建PDF文件。每次我得到一个错误。
代码:
private byte[] generateAttachment(Map<String, Object> reportParams) throws EngineException {
IReportRunnable design = this.reportEngine.openReportDesign(this.getClass().getClassLoader().getResource(
ATTACHMENT_PATH).getFile());
// Create a task to run and render the report
IRunAndRenderTask runAndRenderTask = this.reportEngine.createRunAndRenderTask(design);
// Set parent class loader for engine
runAndRenderTask.getAppContext().put(
EngineConstants.APPCONTEXT_CLASSLOADER_KEY,
CAFInjectorService.class.getClassLoader());
// Set report parameter values and validate
if (reportParams != null)
runAndRenderTask.setParameterValues(reportParams);
runAndRenderTask.validateParameters();
// Setup PDF renderer
ByteArrayOutputStream outStream = new ByteArrayOutputStream();
PDFRenderOption pdfOptions = new PDFRenderOption();
pdfOptions.setOutputFormat("pdf");
pdfOptions.setOutputStream(outStream);
pdfOptions.setOption(
IPDFRenderOption.PAGE_OVERFLOW,
IPDFRenderOption.FIT_TO_PAGE_SIZE);
runAndRenderTask.setRenderOption(pdfOptions);
// Run and render the report
runAndRenderTask.run();
runAndRenderTask.close();
return outStream.toByteArray();
}我收到以下错误
org.eclipse.birt.report.engine.api.UnsupportedFormatException: The output format pdf is not supported.编辑:我只有这个birt相关的gradle依赖:
compile group: 'org.ow2.orchestra.eclipse.birt', name:'org.ow2.orchestra.eclipse.birt.report.engine', version:'3.7.0'我需要再来一杯吗?
编辑2:
新增:compile group: 'org.eclipse.birt.runtime', name:'org.eclipse.birt.runtime', version:'4.4.1'
并在尝试下载依赖项时出现此错误:
A problem occurred evaluating root project 'XXX'.
> Could not resolve all dependencies for configuration ':compile'.
> Could not resolve r(*);runtime->runtime: <dependency:rg.eclipse.birt.runt.
Required by:
:XXX:unspecified > org.eclipse.birt.runtime:org.eclipse.birt.runtime:4.4.1
> Illegal character in path at index 55: http://repo1.maven.org/maven2/r(*);runtime->runtime/ <dependency/rg.eclipse.birt.runt/ <dependency-rg.eclipse.birt.runt.pom
> Illegal character in path at index 55: http://repo1.maven.org/maven2/r(*);runtime->runtime/ <dependency/rg.eclipse.birt.runt/ <dependency-rg.eclipse.birt.runt.pom
> Could not resolve org.milyn:flute:1.3.
Required by:
:xxx:unspecified > org.eclipse.birt.runtime:org.eclipse.birt.runtime:4.4.1
> inconsistent module metadata found. Descriptor: CachedResource: C:\Users\lior\.gradle\caches\modules-2\files-2.1\org.milyn\flute\1.3\b0f8da138f675101a0f6d54e6d0882d922bf1557\flute-1.3.pom for http://repo1.maven.org/maven2/org/milyn/flute/1.3/flute-1.3.pom Errors: bad group: expected='org.milyn' found='milyn'
> inconsistent module metadata found. Descriptor: CachedResource: C:\Users\lior\.gradle\caches\modules-2\files-2.1\org.milyn\flute\1.3\b0f8da138f675101a0f6d54e6d0882d922bf1557\flute-1.3.pom for http://repo1.maven.org/maven2/org/milyn/flute/1.3/flute-1.3.pom Errors: bad group: expected='org.milyn' found='milyn'发布于 2015-03-02 23:57:32
我不确定org.ow2.orchestra对BIRT做了什么;我正在使用mt4e将官方的Eclipse BIRT包转换成Maven可以处理的JAR。不幸的是,这是一个相当冗长/复杂的过程:
您需要检查它们是否与某个地方的org.apache.batik.pdf有依赖关系;在我的代码中,捆绑包org.eclipse.birt.runtime就是这样做的。
https://stackoverflow.com/questions/28812771
复制相似问题