BIRT 3.7运行时.不再可以自定义PDF字体和jdbc驱动程序?

Fox*_*BOA 5 java pdf birt jdbc

我正在尝试将BIRT升级到最新的运行时3.7.看起来不可能自定义PDF字体!在以前的版本中,它是在org.eclipse.birt.report.engine.fonts*/fontsConfig*.xml文件中完成的.

在3.7 fontsConfig*.xml文件中嵌入了BIRT运行时jar文件(在我的例子中org.eclipse.birt.runtime_3.7.1.v20110913-1734.jar).jar文件已签名,认为它对OSGI是必要的.因此,如果您更改jar中的任何内容,JRE会在加载文件时抛出校验和错误.如果删除签名信息,OSGI将不会加载它(NPE).

任何想法如何在不重建BIRT运行时的情况下自定义我的pdf字体?

顺便说一句,我怀疑jdbc驱动程序存在同样的问题.上面提到的jar文件包含drivers文件夹.怀疑它是来自插件的jdbc驱动程序的存根org.eclipse.birt.report.data.oda.jdbc*.

几年前,我问了一个关于从BIRT运行时添加PDF字体的问题.它仍然没有答案BIRT:pdf发射器,从相对路径加载/使用字体或从jar文件

更新:

  1. 关于pdf字体,发现3.7.1中未解决的开放漏洞 - https://bugs.eclipse.org/bugs/show_bug.cgi?id=347431
  2. 根据http://wiki.eclipse.org/Birt_3.7_Migration_Guide#JDBC_Drivers,jdbc drivres必须在类路径中

sch*_*edy 3

这不是最干净的方法,但可以在 jar 文件中编辑它们。您可以通过删除 META-INF/ECLIPSEF.SF 并删除 META-INF/MANIFEST.MF 中主要部分之后的所有内容(文件名和摘要...或者,仅删除配置文件的部分)来删除签名。不需要对 jar 进行签名(我想这取决于安全管理器的设置,但在默认设置下它运行良好)。