最近开始研究报表,可怜的我,项目组的人都没有做过这一块,害的我天天就要从网上找资料来开发它。
哎,公司好多网站被屏蔽了,让我用了近半个月的时间,才勉强的把官方网站上的几个例子,成功用RCP插件项目展示出来。
下面在做birt时,遇到的问题,希望能帮助到像我这样刚入门的新生。
1.PlatForm.startup(config);报异常:can't startup the OSGI framework
解决方案:将birt_home必要设置到ReportEngine下
2.创建PlatForm.createFactoryObject时,报NullPointException
解决方案:看了一下Runtime->ReportEngine>Configuration->有个最近生成的.log日志文件,看里面的信息,我的大致是这个样子:
Missing constraint required_bundle xxxx version xxx
Missing Bundle initial@reference:file:plugins xxxxx was not resolved
在plugin.xml的第二页depend的那个里面把上面看少的包给加进去,就可以了。
3.在导出pdf,html时,报格式不支持
解决方案:也是在plugin.xml每二页里加入下面的包:
com.lowagie.itext
org.eclipse.birt.report.engine.emitter.html
org.eclipse.birt.report.engine.emitter.pdf
[org.eclipse.birt.report.engine.script.javaScript可能需要,有时不能支持需要此包。我也不太了解]
4.在做dataSource那一块时,老是报NullpointException
OdaDataSourceHandle dsHandle = designFactory.newOdaDataSource(
"Data Source", "org.eclipse.BIRT.report.data.oda.jdbc" );
dsHandle.setProperty( "odaDriverClass","org.eclipse.BIRT.report.data.oda.sampledb.Driver" );
解决方案:还是导包org.eclipse.birt.report.data.oda.jdbc(mysq只需此一l)
org.eclipse.birt.report.data.oda.sampledb
5.don't connet com.mysql.jdbc
解决方案:在eclipse的plugin的org.eclipse.birt.report.data.oda.jdbc_xx文件夹下的driver中,放入mysql包,
若是其它,同理
以上问题都是在RCP插件项目中遇到的,也许不能很好解决你的问题,在此表示不好意思,如有更好的解决方案,可以提出,大家共同学习!