多语言展示
当前在线:982今日阅读:165今日分享:48

mondrian4.3源码运行过程中的部分异常

mondrian是rolap平台查询语言工具,升级到mondrian4后,网上的资料比较少,这里将开发过程中的异常做下记录。下面是mondrian4.3的源代码结构:
工具/原料

mondrian4.3

方法/步骤
1

运行mondrian4.x连接oracle报如下异常:Exception in thread 'main' java.lang.NoClassDefFoundError: org/apache/commons/math/MathException解决办法:添加maven依赖 commons-math commons-math 1.2

2

运行mondrian3.x版本xml报下面的错误:Caused by: org.eigenbase.xom.XOMException: In Schema: In Cube: element is not of expected type mondrian.olap.Mondrian3Def$Relation解决办法:需要先添加一个事实表

3

mondrian4连接oracle报如下错误:mondrian.olap.MondrianException: Mondrian Error:Internal error: Error while creating SQL connection: Jdbc=jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:orcl;Caused by: java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:orcl解决办法:添加oracle数据库maven依赖 oracle ojdbc6 11.2.0.3

4

mondrian4连接oracle报异常:mondrian.rolap.RolapSchema$MondrianSchemaException: Table 'xxx' does not exist in database. (in Table) (at line 3, column 2)解决办法:把表名全部改成大写,因为oracle拿出来的表结构都是大写的

5

mondrian4连接oracle报如下错误:java.sql.SQLException: No suitable driver found for Provider=mondrian;Jdbc=jdbc:oracle:thin:@xxx.xxx.xxx.xxx:1521:orcl;JdbcUser=xxx;JdbcPassword=xxxx;Catalog=D:/java/xxx/studentgrade.xml;JdbcDrivers=oracle.jdbc.driver.OracleDriver;解决办法:把Provider=mondrian;换成jdbc:mondrian:

6

mondrian4连接oracle报如下异常:mondrian.rolap.RolapSchema$MondrianSchemaException: Cube definition must contain a MeasureGroups element, and at least one MeasureGroup (in Cube 'xxxx') (at line 6, column 1解决办法:添加元素,mondrian升级后,格式发生了变化。