最近公司使用BI工具制作报表到项目中,这样就得把BI集成到项目中,现在我采用手动集成,将产品自带的webapps下的sree/classes中的配置文件拷到项目的src/resource,暂时涉及如下配置文件,其他的文件会自动生成:datasource.xml(数据源配置信息)、sree.proproties(核心配置文件)、assert.dat(报表数据文件,二进制文件)、query.xml
;sree下的除了classes文件夹都是需要的。最初配置文件一大堆,不知道那些是必须得,那些是生成的,其中我学到了如何精简配置文件,有些配置文件是可以自动生成的,导入报表jar包会生成一些配置文件。
BI支持安全机制有身份验证和授权,都有“LDAP/自定义/默认”三个选项,对于身份验证选择“自定义”,授权采用默认文件,实现BI提供的接口,具体名字没记住,开发文档中有。需要实现几个方法,如loadUser()/loadGroup()/loadRole()/init()/authenticate(),拿到系统中用户、角色、组的信息后,需要构造BI中的FSUser/FSRole/FSGroup对象,其中用户对象中需要组和角色信息,而且要确保这些组和角色必须存在,否则在后台管理页面中的用户界面无法看到自己系统中的用户、角色、组,因为每次登陆BI系统或每隔一分钟都会调用authenticate()方法校验用户合法性,可以再sree.proproties文件中配置role.admistrator=admin指定那个角色是管理员权限,但是每次重新启动系统后,“启动安全机制”都会消失,原因还不知道,可能是这种手动集成项目的方法不对,缺少了文件。
总结如下:
1)保证用户所属的组和角色都存在,不然会显示不出来。
2)对于不需要的参数不要设置为null,否则会导致组中的用户无法显示,没有“+”图标,最好设置为默认值,或为空字符串