简体   繁体   English

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

[英]Difference between reports generated in two different servers

I stumbled in a weird problem in which the same report generated in one server is different from the one generated on another server. 我偶然发现了一个奇怪的问题,其中在一台服务器上生成的同一报告与另一台服务器上生成的报告不同。

The package deployed (WAR file) is the same, I checked event the MD5 of it. 部署的程序包(WAR文件)是相同的,我检查了事件的MD5。 The same data is being used to generate the report, so no difference from the application itself. 相同的数据用于生成报告,因此与应用程序本身没有区别。

I took a look into the Java version and the one that is generating the report as expected is using Oracle JVM 1.7 and the one generating the weird formated report is using OpenJDK. 我研究了Java版本,按预期生成报告的版本使用Oracle JVM 1.7,而生成奇怪格式的报告的版本使用OpenJDK。

I suppose this should be the problem right? 我想这应该是问题所在吗? In this case what else could I check to maybe find the problem? 在这种情况下,我还能检查什么以发现问题?

Things I already have checked are: 我已经检查过的东西是:

  • war file deployed to both servers; 战争文件部署到两台服务器;
  • fonts installed on both servers are the same; 两台服务器上安装的字体相同;
  • version of both servers (right one is being run on a apache-tomcat-7.0.28 and the weird one apache-tomcat-7.0.29); 两个服务器的版本(正确的一个正在apache-tomcat-7.0.28上运行,而奇怪的一个正在apache-tomcat-7.0.29上运行);
  • properties and version of libraries; 库的属性和版本;

ADD

Within the report I have a few fields that are justified, and these are stretched and line break is positioned in a quite strange position. 在报告中,我有一些合理的字段,这些字段经过拉伸,换行符位于非常奇怪的位置。

在此处输入图片说明

For example the blue area should present 2 lines, but it presents 3, the second is the word with a big letter spacing and a 3rd one with just one word that should be on the second line. 例如,蓝色区域应显示2行,但显示3行,第二个是字母间距较大的单词,而第三个是仅一个单词应位于第二行的单词。 And the green area is presenting 2 lines which is fine but the last line it is justifying the word to the entire line increasing the space between the letters. 绿色区域显示2行,这很好,但最后一行将单词与整个行对齐,从而增加了字母之间的间隔。

I recheck all the configuration and components and here is the result: 我重新检查所有配置和组件,结果如下:

  • upgrading locally tomcat to 7.0.29 didn't solved the problem; 将本地tomcat升级到7.0.29并没有解决问题。
  • fonts configured are exactly the same; 配置的字体完全相同;
  • font visually resulted in both PDF files are the same; 视觉上导致两个PDF文件的字体相同;
  • no log output from JR that could indicate something is missing / wrong; 没有从JR输出的日志表明可能丢失/错误;
  • war file (deployment package) is the same (lib are the same); war文件(部署包)相同(lib相同);
  • server configuration are the same; 服务器配置相同;

What was missing is to change the JVM, and indeed changing JVM from OpenJDK 1.6.0-b09 to Oracle JVM 1.7.0_25-b15 solved the problem. 缺少的是更改JVM,并且确实将JVM从OpenJDK 1.6.0-b09更改为Oracle JVM 1.7.0_25-b15可以解决此问题。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 ColdFusion在两个不同服务器上生成的不同存根 - Different stubs generated by ColdFusion on two different servers 使用不同库生成的 JWK 之间的区别 - Difference between JWK generated with different libraries 在部署在不同服务器上的两次战争之间共享pojo对象 - Sharing a pojo objrct between two wars deployed in different servers 同一个IP但不同端口上的两个服务器之间的JSESSIONID冲突 - JSESSIONID collision between two servers on same ip but different ports Tomcat9 Log4j2-两台服务器之间的日志记录不同 - Tomcat9 Log4j2 - Logging is Different Between Two Servers 具有不同时区的两个日期之间的差异 - Difference between two dates with different timezones 搜索两个不同链表之间的差异 - Searching difference between two different linked list 如何在两个不同的数据库服务器之间双向同步两个表? - How to Synchronize two tables both way between two different database servers? java 在两台不同服务器上的性能 - java performance on two different servers 在不同服务器上运行的两个Java Web应用程序之间传输数据的最佳方法 - Best way to transfer data between two Java web applications running on different servers
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM