OpenI入门-自己动手new一个Project

      看了很久的资料,最终迫于项目人力不足,目前只有我一个人在半开发阶段,还是不得不“拜倒在”OpenI的石榴裙下,一直在网上查相关的入门资料,结果最多也就是给介绍下怎么运行官方的Demo,可要真正理解还是需要自己new一个出来跑跑才行,直接把官方的war丢在tomcat下面运行始终觉得没什么看点。

     openI官方没有发布很多的资料,唯一可以了解下怎么部署和一些基本配置的就是Wiki上面少的可怜的英文资料(http://wiki.openi.org/),官方现在也渐渐在Pentaho靠拢,说明Pentaho的确很强大。

      好吧,现在开始自己用数据搞点简单的报表出来。在这之前最好能了解下Mondrian和JPivot,并且运行下官方的Demo作为热身。先把官网的Demo下来吧,哪里下,怎么解压导入到Myeclipse就不细说了,网上有相关的资料。要运行OpenI需要Mondrian提供数据源,所以千万不要丢掉了Mondrian.war这个东西。

    1. OpenI是基于Mondrian和JPivot的,可以说很大部分的工作都是他们俩做的,所以先配置下DataSource信息吧,把Mondrian解压后找到WEB-INF文件夹下面的datasource.xml,然后按照Demo中的FoodMart的格式配置我们自己的DataSource信息(可以参考下http://wiki.openi.org/installation/setup-xmla-interface-for-olap-servers)。 如果我们的数据库中有中文,就要设置字符集,否则看到的就是问号,问号,还是问号,可恶的字符集!字符集需要在两个地方进行修改,一个是Mondrian的WEB-INF下面的Web.xml下面找到

<servlet-name>MondrianXmlaServlet</servlet-name>
    <servlet-class>mondrian.xmla.impl.DefaultXmlaServlet</servlet-class>

    修改为

   

  <servlet>
    <servlet-name>MondrianXmlaServlet</servlet-name>
    <servlet-class>mondrian.xmla.impl.DefaultXmlaServlet</servlet-class>
    <init-param>
	<param-name>CharacterEncoding</param-name><param-value>UTF-8</param-value>
     </init-param>
  </servlet>

     另外一个地方就是我们的jdbc了,具体可以见附件xml的<DataSourceInfo>标签下面的内容,一个是sqlserver的字符集设置,另外一个是Oracle的字符集设置,mysql的字符集和sqlserver的修改方法一样。

     2. 将我们的Schema文件放到Mondrian文件下的WEB-INF\queries中,我们的Cube,维度,度量全部在这里面。如果不想自己写的同学可以直接使用网上的一些Mondrian入门提供的Schema文件。

     3. 搞定Datasource后就可以new一个Peoject出来,启动OpenI,进入主界面后找到Preferences->Create New Project,注意XMLA URL 这一栏,可以填写我们datasource.xml中相应datasource指定的uirl,我用的是http://localhost:8080/mondrian/xmla,如果你想使用Xmla方式连接数据库的话,譬如sqlserver自己有自己的OLAP分析引擎,这样可以直接填写你配置好的Xmla url地址(可以参考http://blog.csdn.net/zlp321002/article/details/5326151),这种情况不做赘述。还有记得给自己的Peoject找个好看点的logo。。。

   4. 如果上一步在你点击get Catalog按钮没有红字提示,说明基本没什么大问题了,至于Catalog可以不选。这一部我们要在OpenI中增加一些Data Source,找到Preferences->Data Sources,找到右边的add new 然后选择XMLA,进入到OLAP Database界面,在XMLA  URL那一栏输入datasource.xml中指定的URL值(http://localhost:8080/mondrian/xmla),点击get Datasources,然后可以在下面的下拉框中看到我们配置的datasource,选中一个后,选中我们的Catalog后就可以在下面看到我们可爱的Cubes了,点击save后就可以看到我们新增的Data Source了。

     5.这一步就可以做出一些简单的报表了,找到Reports->Create New目录,选中我们刚才的那个data source,然后选择一个Cube(如果没有找到,可能就是上一步有问题了,检查下有什么问题),然后点击OK,就可以看到报表了,和JPivot做出来的效果差不多,其实就是JPivot做出来的。。。。

     到现在一个还过得去的Project出来了,给自己鼓励一下,以后的项目还有很多工作,也还有很多弯路要走,仅仅乱码就看了一天多时间,做了很多无用功,希望自己能从这个项目学到很多新的东西,锻炼下接触到掌握一门新技术的能力,搞技术的就要耐得住寂寞才行。

      附件中包含三个文件:一个Mondrian的简单介绍,一个Schema文件,一个datasource配置文件。如果各位看官觉得中间有什么问题,欢迎多多指正。

    

      

猜你喜欢

转载自jaryur0001-yahoo-cn.iteye.com/blog/1888890