两个不同服务器生成的报告之间的差异

时间:2013-06-28 15:22:00

标签: java jasper-reports

我偶然发现了一个奇怪的问题,即在一台服务器上生成的同一报告与在另一台服务器上生成的报告不同。

部署的包(WAR文件)是相同的,我检查了它的MD5事件。正在使用相同的数据生成报告,因此与应用程序本身没有区别。

我查看了Java版本,正在生成报告的是使用Oracle JVM 1.7,而生成奇怪格式化报告的是使用OpenJDK。

我想这应该是问题吧?在这种情况下,还有什么我可以检查以找到问题?

我已经检查过的事情是:

  • war文件部署到两台服务器;
  • 两台服务器上安装的字体相同;
  • 两个服务器的版本(正确的一个是在apache-tomcat-7.0.28和奇怪的一个apache-tomcat-7.0.29上运行);
  • 库的属性和版本;

添加

在报告中我有一些合理的字段,这些字段被拉伸,换行位置处于一个非常奇怪的位置。

enter image description here

例如,蓝色区域应该显示2行,但它显示3个,第二个是具有大字母间距的单词,第3个单词只有一个单词应该在第二行。并且绿色区域呈现2条线条很好,但是最后一条线条正确地说明整个线条增加了字母之间的空间。

1 个答案:

答案 0 :(得分:0)

我重新检查所有配置和组件,结果如下:

  • 将本地tomcat升级到7.0.29并没有解决问题;
  • 配置的字体完全相同;
  • 字体直观地导致两个PDF文件都相同;
  • 没有来自JR的日志输出可能表示某些内容丢失/错误;
  • war文件(部署包)是相同的(lib是相同的);
  • 服务器配置相同;

缺少的是更改JVM,确实将JVM从OpenJDK 1.6.0-b09更改为Oracle JVM 1.7.0_25-b15解决了这个问题。