birt插件 web_Maven方式集成BIRT 4.6 Webviewer
平生从未见过如此糟糕的官方maven发布质量,窃以为是公司只想卖商业版本,对应的开源版本BIRT简直就是抱来养的。
为了顺利集成BIRT,采用两步走方式:以eclipse的能运行版本为比较基础,再使用maven方式集成验证。
传统动态web项目方式
使用eclipse官方下载的birt-runtime-4.6.0-20160607.zip中的WebViewerExample示例,使用传统web项目方式,检验birt是否可以正常运行。
结论是不能运行,报错“Invalid signature file digest for Manifest main attributes”,是有几个jar包中的签名有问题,官方发行包太应付了事了,实话说做这事儿的人必须开除(可能老板就是这个意思,好让大家去买他们的商业版本)。
排查如下两个包有问题:org.eclipse.birt.runtime_4.6.0-20160607.jar, org.eclipse.datatools.connectivity.oda_3.5.0.201603142002.jar。
打开包删除两个签名文件:/META-INF/ECLIPSE_.RSA 和/META-INF/ECLIPSE_.SF。
在tomcat 8.5中运行,可以正确访问报表。
在这个项目的基础上,创建maven项目,并使用beyand compare软件快速比较依赖的jar包区别,进行下一步maven集成工作。
maven集成方式
创建maven web项目,使用仓库中的BIRT 4.6,JDK为1.8,tomcat为8.5。
org.eclipse.birt.runtime
org.eclipse.birt.runtime
4.6.0-20160607
org.eclipse.birt.runtime
org.eclipse.orbit.mongodb
maven依赖中的这个包org.eclipse.birt.runtime-4.6.0-20160607.jar,和runtime示例中对应的包比较,缺失Tidy类,需要使用runtime下载zip包中的对应文件(org.eclipse.birt.runtime_4.6.0-20160607.jar删除签名文件,注意下划线和横线的区别)替换本地maven仓库中的文件。
maven依赖包中的org.eclipse.datatools.connectivity.oda-3.5.0.201603142002.jar,打开这个文件,删除/META-INF/ECLIPSE_.RSA 和/META-INF/ECLIPSE_.SF。
maven仓库中没有BIRT web viewer,使用本地仓库加载,将viewservlets.jar拷贝到GAV对应的本地路径(例如:/Users/kevin/.m2/repository/org/eclipse/birt/viewer/birt.viewer/4.6.0-20160607/birt.viewer-4.6.0-20160607.jar)。
不停的启动,检查缺失的包:axis-jaxrpc和commons-discovery。
直到可以正常访问报表。
最后可运行的maven pom文件为
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4.0.0
net.xprogrammer
birtmvn
war
0.0.1-SNAPSHOT
birtmvn Maven Webapp
http://maven.apache.org
org.eclipse.birt.runtime
org.eclipse.birt.runtime
4.6.0-20160607
org.eclipse.birt.runtime
org.eclipse.orbit.mongodb
org.eclipse.birt.viewer
birt.viewer
4.6.0-20160607
org.apache.axis
axis
1.4
org.apache.axis
axis-jaxrpc
1.4
commons-discovery
commons-discovery
0.5
birtmvn
报表也能正常导出。
2019年10月1日,成都,Kevin。
2020年4月23日,成都,Kevin。
birt插件 web_Maven方式集成BIRT 4.6 Webviewer相关推荐
- eclipse中birt插件使用_eclipse安装birt插件
方法一: 到Eclipse的官方网站[download.eclipse.org]去下载 BIRT 插件(birt-report-designer-all-in-one-2_1_1),解压后,它就是一个 ...
- eclipse安装birt插件
方法一: 到Eclipse的官方网站[download.eclipse.org]去下载 BIRT 插件(birt-report-designer-all-in-one-2_1_1),解压后,它就是一个 ...
- eclipse 安装birt插件
1. 安装BIRT插件 1)Help->Install new Software... 2)在打开的弹出框中点击Add...->Location中输入:http://download.ec ...
- SpringBoot 集成 Birt
需求 BIRT 一般是可以通过单独部署一个Webviewer的工程来处理客户的report查看请求.但是有些需求可能是根据业务规则定制查询条件生成report,然后定期生成report放在数据库里,供 ...
- 如何在手机APP中通过H5方式集成监控摄像头实时直播画面
当前,视频监控应用在各种应用场景下已经大面积应用,并且经过多年日积月累的建设,所采用的厂商设备也是五花八门,比如有海康.大华.宇视.天地伟业等各种品牌的摄像头. 同时,随着各种数字化应用系统的建设,很 ...
- pythondd_工程脚本插件方案 - c集成Python基础篇
工程脚本插件方案 - c集成Python基础篇 序: 为何要集成脚本,怎样在工程中集成Python脚本. 在做比较大型的工程时,1般都会分核心层和业务层.核心层要求实现高效和稳定的基础功能,并提供调用 ...
- Android Studio 三种添加插件的方式,androidstudio
前几篇blog我们介绍了如何安装和配置Android Studio,这篇Blog我们来聊聊如何给Android Studio添加插件,添加插件的路径有三种,我把他们分类如下: 点击设置小按钮 点击[P ...
- android sdk 封装html5,Android平台以WebView方式集成HTML5+SDK方法
HTML5+ SDK 可以按照"独立应用"和"单页面"两种种方式进行集成,两种集成方式各有优点. 独立应用集成方式:即Widget集成方式,开发者在集成后可在需 ...
- 知行EDI系统如何通过中间数据库表方式集成金蝶ERP
金蝶ERP作为目前使用最广泛的业务系统之一,面向不同的服务群体有不同类别的软件,主要有企业管理软件.协同管理软件.政府非盈利组织管理软件.夯实的数据整合管理能力和应对不同业务的实施灵活性,让金蝶ERP ...
最新文章
- Linux磁盘阵列技术详解(二)--raid 1创建
- 《编写高质量代码:改善c程序代码的125个建议》——第1章 数据,程序设计之根本建议1:认识ANSI C...
- webpack流程图
- C++Primer:函数(参数传递:引用形参)
- linux 邮件日志,linux下如何建立邮件日志
- 引用和可触及性的强度
- AngularJS学习(二)
- 手机mt4一键平仓所有_手机一键就能提取PPT所有文字!10秒完成,这波操作好用到你害怕...
- 使用xp_readerrorlog命令读取SQL Server错误日志
- Ps 初学者教程,如何使用色阶滴管工具校正色偏?
- STM32F103--移植FreeRTOS完整教程
- HDU - 2567 寻梦 ac代码
- Android 端发送邮件
- spring上传文件
- c语言姓名如何定义,c语言如何输入编号和姓名
- 容联云的测试未上线手机号报错
- 极客日报:宿华不再担任快手CEO,程一笑接任;微软市值重登全球第一;Bootstrap 4.6.1发布
- 为什么一个手机有两个mac地址?
- JS逆向之巨量星图sign签名
- TokenGazer《一问到底》| 第46期:研究员 VS eNotes