Mondrian / Pivot4j错误java.lang.IndexOutOfBoundsException与闭包表

时间:2016-01-22 11:58:09

标签: pentaho mondrian pivot4j

这是情景:

  • Pentaho 5.4.0 CE
  • Pivot4j插件

如果在Mondrian XML Schema中我插入了一个维度,其层次结构类型为parent-child - 使用闭包表定义 - 使用以下选项,它运行良好(也就是说,我可以看到结果表并向下钻取到父子层次结构元素):

  • 属性“nameColumn”已定义(引用事实表字段)
  • 属性“captionColumn”为空(未指定字段)

如果我尝试将两个属性定义更改为

  • 属性“nameColumn”已定义(引用事实表字段)
  • 属性“captionColumn”已定义(引用另一个事实表字段)

我从Pivot4J java.lang.IndexOutOfBoundsException得到错误:索引:2,大小:2 。它只发生在使用闭包表定义的维度上,在标准维度中我可以同时设置属性而没有错误。

有任何想法,我怎么能解决这个问题?这是一个问题,因为我需要使用包含最终用户标签值的 captionColumn 属性, nameColumn 包含昵称。我在Pentaho 6.0中遇到了同样的问题。

这就是我在pentaho日志中所拥有的:

... Caused by: java.lang.IndexOutOfBoundsException: Index: 2, Size: 2
at java.util.ArrayList.rangeCheck(ArrayList.java:635)
at java.util.ArrayList.get(ArrayList.java:411)
at mondrian.rolap.SqlMemberSource.makeMember(SqlMemberSource.java:1072)
at mondrian.rolap.SqlMemberSource.getMemberChildren2(SqlMemberSource.java:1004)
at mondrian.rolap.SqlMemberSource.getMemberChildren(SqlMemberSource.java:881)
at mondrian.rolap.SqlMemberSource.getMemberChildren(SqlMemberSource.java:854)
at mondrian.rolap.SmartMemberReader.readMemberChildren(SmartMemberReader.java:249)
at mondrian.rolap.SmartMemberReader.getMemberChildren(SmartMemberReader.java:211)
at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.readMemberChildren(RolapCubeHierarchy.java:600)
at mondrian.rolap.RolapCubeHierarchy$CacheRolapCubeHierarchyMemberReader.getMemberChildren(RolapCubeHierarchy.java:696)
at mondrian.rolap.SmartMemberReader.getMemberChildren(SmartMemberReader.java:177)
at mondrian.rolap.RestrictedMemberReader.getMemberChildren(RestrictedMemberReader.java:101)
at mondrian.rolap.SmartRestrictedMemberReader.getMemberChildren(SmartRestrictedMemberReader.java:85)
at mondrian.rolap.RolapSchemaReader.internalGetMemberChildren(RolapSchemaReader.java:186)
at mondrian.rolap.RolapSchemaReader.getMemberChildren(RolapSchemaReader.java:168)
at mondrian.rolap.RolapSchemaReader.getMemberChildren(RolapSchemaReader.java:162)
at mondrian.olap4j.MondrianOlap4jMember$3.execute(MondrianOlap4jMember.java:111)
at mondrian.olap4j.MondrianOlap4jMember$3.execute(MondrianOlap4jMember.java:110)
at mondrian.server.Locus.execute(Locus.java:86)
at mondrian.server.Locus.execute(Locus.java:71)
at mondrian.olap4j.MondrianOlap4jMember.getChildMemberCount(MondrianOlap4jMember.java:105)
at org.pivot4j.impl.QueryAdapter.canExpand(QueryAdapter.java:838)
at org.pivot4j.transform.impl.DrillExpandPositionImpl.canExpand(DrillExpandPositionImpl.java:44)
at org.pivot4j.ui.command.DrillExpandPositionCommand.canExecute(DrillExpandPositionCommand.java:69)
at org.pivot4j.ui.AbstractPivotRenderer.getCommands(AbstractPivotRenderer.java:146)
at org.pivot4j.ui.table.TableRenderer.access$100(TableRenderer.java:60)
at org.pivot4j.ui.table.TableRenderer$3.handleTreeNode(TableRenderer.java:649)
at org.pivot4j.ui.table.TableHeaderNode.walkChildrenAtColIndex(TableHeaderNode.java:915)
at org.pivot4j.ui.table.TableHeaderNode.walkChildrenAtColIndex(TableHeaderNode.java:931)
at org.pivot4j.ui.table.TableRenderer.renderBody(TableRenderer.java:611)
at org.pivot4j.ui.table.TableRenderer.render(TableRenderer.java:483)
at org.pivot4j.analytics.ui.ViewHandler.render(ViewHandler.java:597)
at org.pivot4j.analytics.ui.ViewHandler.structureChanged(ViewHandler.java:963)
at org.pivot4j.impl.PivotModelImpl.fireStructureChanged(PivotModelImpl.java:833)
at org.pivot4j.impl.PivotModelImpl$1.queryChanged(PivotModelImpl.java:111)
at org.pivot4j.impl.QueryAdapter.fireQueryChanged(QueryAdapter.java:197)
at org.pivot4j.impl.QueryAdapter.fireQueryChanged(QueryAdapter.java:182)
at org.pivot4j.impl.QueryAdapter.onQuaxChanged(QueryAdapter.java:1109)
at org.pivot4j.impl.QueryAdapter$1.quaxChanged(QueryAdapter.java:79)
at org.pivot4j.impl.Quax.fireQuaxChanged(Quax.java:163)
at org.pivot4j.impl.Quax.regeneratePosTree(Quax.java:648)
at org.pivot4j.transform.impl.PlaceHierarchiesOnAxesImpl.placeHierarchies(PlaceHierarchiesOnAxesImpl.java:88)
at org.pivot4j.transform.impl.PlaceHierarchiesOnAxesImpl.addHierarchy(PlaceHierarchiesOnAxesImpl.java:119)
at org.pivot4j.analytics.ui.NavigatorHandler.addHierarhy(NavigatorHandler.java:548)
at org.pivot4j.analytics.ui.NavigatorHandler.addHierarhy(NavigatorHandler.java:516)
at org.pivot4j.analytics.ui.NavigatorHandler.onDropOnAxis(NavigatorHandler.java:392)
at org.pivot4j.analytics.ui.NavigatorHandler.onDropOnAxis(NavigatorHandler.java:365)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.el.parser.AstValue.invoke(AstValue.java:191)
... 77 more

0 个答案:

没有答案