以下所有内容都是在克隆开发(VM)服务器中完成的,因此我的生产环境没有风险(已完成报告的prd04,创建和解决问题的tst04,现在正在克隆tst04)。
我一直在使用BIRT 4.2.1大约一年,我有几个报告,最重要的是用4.2.1创建的库。虽然生产报告实际上是通过Apache运行的,但我已经下载并更新了“运行时”文件,因此任何新报告都可以正常运行,但这使得95%的旧报告停止工作。如果我现在要运行4.3.1,尝试用4.2.1“修复”它们是没有意义的。我希望通过与jar或war文件相关的库更正来修复问题。
我想在同一个工作区使用我新下载的4.3.1,并使用与4.2.1中相同的项目。但我正努力让它发挥作用而没有运气。
故障
开始感觉我只剩下两个选项了;
创建一个单独的Apache实例,用于运行任何新的4.3.1报告,使所有现有报告在Apache上运行,并带有4.2.1“运行时”文件
为4.3.1创建一个新项目并逐个重建现有报告,一旦我完成所有工作升级我的生产Apache并重新部署所有更新的报告。
隐形工作区的屏幕截图
答案 0 :(得分:2)
您写道:我已下载并更新了“运行时”文件,因此任何新报告都可以正常运行,但这使得95%的旧报告停止运行。
你到底是什么意思?错误消息?挂起?崩溃?的OutOfMemoryError?
如果它是OOM,你可能会遇到4.2.2中引入的关于默认行提取大小的“功能”(参见https://bugs.eclipse.org/bugs/show_bug.cgi?id=407299)。
除此之外,我没有看到为什么使用4.2.1创建的任何报告不应与4.3一起运行的原因。
只是为了澄清:你是否正在以某种方式使用Eclipse IDE作为一种“BIRT Reports Server”?说实话,这听起来很疯狂。
我们也在使用自定义插件。这是用BIRT 3.7.1开发的,并且在3.7.1,4.2.1和4.3上运行没有任何问题。
BIRT运行时环境(一堆JAR,没有OSGI)也是如此。我们没有使用Apache Tomcat(相反,我们开发了“BIRT Reports Server”)。
应该可以通过用4.3 JAR替换4.2.1 JAR并相应地设置类路径来更新Tomcat服务器。