最近因为工作需要,开始研究基于Eclipse的birt报表开发,由于以前未曾接触过,在研究的过程中遇到一些问题,现将其整理成文,以作备忘,也希望对初次接触birt的人有一些帮助(我想对于初次接触birt的人很可能也遇到这些问题)。

 

这篇文章不是一步一步地学习birt,但你在学习birt的过程中很可能遇到我下面整理出来的这些问题和提到的注意事项。
 

对于birt的介绍,大家上网去搜索,比较多!
 

建议先看一下这篇文档《BIRT中文指南》,很完整,很浅显易懂,看完以后对birt就会有一个大体的认识,然后应该试着去做些简单的例子。

 

我个人的习惯,我把birt整合到了Myeclipse6.5中,(eclipse的官方网站上提供有一个birt-report-designer-all-in-one-2_2_2.zip,你直接解压缩这个就可以了,就免去了birt与Myeclipse6.5的整合)。

 

 如果要把birt安装到Myeclipse6.5中,要注意一些事情:
 1.eclipse的版本很重要。
    就是说你的eclipse版本要和适当的birt版本配合,当前birt的最新稳定版是birt2.3。
    如果使用的是eclipse3.3版本,你应该用birt-report-framework-2_2_2.zip,
    如果使用的是eclipse3.4,你应该用birt-report-framework-2_3_0.zip。

    版本不一致会出一些问题。

 2.在myeclipse6.5中装birt。

    myeclipse6.5自带的是eclipse3.3,所以只能下载birt-report-framework-2_2_2.zip这个版本
    (下载地址:http://download.eclipse.org/birt/downloads/index2.2.2.php) 而birt-report-framework-2_3_0.zip是针对eclipse3.4的。

把下载下来的birt-report-framework-2_2_2.zip包解压,把解压缩之后得到的features文件夹下的所有文件Copy到myeclipse6.5安装目录下的..\myeclipse\eclipse\features下,

例如我的是:D:\MyEclipse_6.5\myeclipse\eclipse\features,
把解压缩之后得到的plugins文件下的所有文件Copy到..\myeclipse\eclipse\plugins下,

我的是D:\MyEclipse_6.5\myeclipse\eclipse\plugins,
重新启动myeclipse,OK!。

 

在实际研究birt的过程中,你可能遇到下面的一些问题:
1.出现java.lang.ClassCastException: org.apache.catalina.util.DefaultAnnotationProcessor的异常。

解决方法:
将tomcat下的conf下的context.xml文件加上:

<Context>
 ......
<Loader delegate="true"/>  <!-- 加上这一句 -->
 ......
</Context>

 

2.出现Cannot open the connection for the driver: org.eclipse.birt.report.data.oda.jdbc的异常。
解决方法:
当你开发的报表连接的自己的数据库时。例如Oracle时,需要把Oracle的jdbc驱动包添加到
项目的\WEB-INF\platform\plugins\org.eclipse.birt.report.data.oda.jdbc\drivers目录下.

 

3.如果你使用的是Tomcat6.0,你需要把commons-logging.jar拷贝到WEB-INF/lib或者Tomcat的lib目录下。

 

大家在使用birt的过程中遇到问题,回复在下面吧,一起研究与学习!