mondrian 3.0.4

  • Ati Rosselet

    Ati Rosselet - 2008-08-04

    Andreas - oops..  I see now (too late) that noone is actually using the Developer forum...   I wrote there concerning updates to jpivot to make it compatible with the latest version of mondrian... hope you get the message.

    • Will Gorman

      Will Gorman - 2008-08-04

      Hi Ati,

      I've already got the latest JPivot running with Mondrian 3.0.4.  I've supplied a patch here a while back:

      Also, the latest set of source changes are available in our public repository:

      Andreas has granted me CVS permissions to JPivot recently, so I will commit all the changes that we've been making to keep JPivot in sync with Mondrian for the next release.

      Hope that helps!


    • Ati Rosselet

      Ati Rosselet - 2008-08-04

      cool.. thanx...   I see that my changes are almost exactly the same... probably why it works :)
      One question though. In  you have:

          // See
          String schemaUrl;
          if (catalogUri.startsWith("/")) {
            schemaUrl = pageContext.getServletContext().getResource(catalogUri).toExternalForm();
          } else {
            schemaUrl = catalogUri;

          // Add the schema URL.  Enclose the value in quotes to permit
          // schema URLs that include things like ;jsessionid values.
          cfg.setSchemaUrl("\"" + schemaUrl + "\"");
      whereas I have:
          URL schemaUrl;
          if (catalogUri.startsWith("/"))
            schemaUrl = pageContext.getServletContext().getResource(catalogUri);
            schemaUrl = new URL(catalogUri);
          if (schemaUrl == null)
            throw new JspException("could not find Catalog \"" + catalogUri + "\"");

          // Add the schema URL.  Enclose the value in quotes to permit
          // schema URLs that include things like ;jsessionid values.
          cfg.setSchemaUrl("\"" + schemaUrl.toExternalForm() + "\"");
      .. etc...

      I don't think there is any functional difference... or am I missing something?

      I also have some new features such as a number formatted for the table displayed/printed values .. etc..    (e.g. on the fly change from ###.00 to ##0.0 or #### or... any custom valid format.... ) not committed at the moment.. mostly because I have been off active development for a while and didn't want to step on any toes :)


    • Christian Chris

      Christian Chris - 2008-09-02

      Hi there,

      I'm trying to compile Jpivot 1.8.0 using the latest Mondrian build but the compilation fails with several errors :

      The method explode(String) is undefined for the type Util    jpivot/src/java/com/tonbeller/jpivot/mondrian    line 118

      The method getSqlKey() is undefined for the type RolapMember    jpivot/src/java/com/tonbeller/jpivot/mondrian    line 43

      The method lookupCompound(OlapElement, List, boolean, int) in the type SchemaReader is not applicable for the arguments (Dimension, String[], boolean, int)    jpivot/src/java/com/tonbeller/jpivot/mondrian    line 123

      I'm not sure which versions of the different libraries I should use, there is a mondrian-HEAD directory in jpivot_repository but it does not seem to be a very recent version.  I've tried to update the jar files there with the latest versions but obviously there are some incompatibilities.

      The reason I'm trying to update mondrian is that with the version currently used in jpivot-1.8.0, I cannot get the trace functionnality working, i.e., mondrian does not dump the generated SQL code although the property mondrian.trace.level=1 is set.  This used to work in earlier versions.

      Could you please give me a hind about how to compile the latest versions ?


      • Ati Rosselet

        Ati Rosselet - 2008-09-02

        you need to use the jpivot from cvs HEAD - the changes are already there to support the new mondrian...

      • Ati Rosselet

        Ati Rosselet - 2008-09-02

        or rather.. as will wrote, use the source he provides a link to, or the patches.
        (I basically used the jpivot-csv and patched it myself..   the patches I made turned out to be almost identical to the ones they made.. so go ahead.. it works great :))

    • Christian Chris

      Christian Chris - 2008-09-03

      Hi Ati,

      thanks a lot for your answer.  In fact I tried the sources provided by Will but I still have several compilation problems.  I might be missing something very obvious.  Do you have an idea what I might be doing wrong ?

      Here are the packages I'm using :
      - jpivot-1.8.0-080724snapshotsrc
      - jpivot_repository CVS HEAD
      - wcf CVS HEAD

      and the errors I get:

      1) jpivot build.xml points to ${repository.home}/jakarta-tomcat-4.1.34 although repository only contains jakarta-tomcat-4.1.31

      2) ant fails with message .NoClassDefFoundError: org/apache/xml/serializer/SerializerTrace.  I have to run it with something like
      CLASSPATH=/usr/share/java/xalan-j2-serializer.jar ant

      3) Then compilation fails with several messages like

          [javac] /opt/dwhoss/share/chris/jpivot-1.8.0-080724snapshotsrc/src/java/com/tonbeller/jpivot/mondrian/ cannot find symbol
          [javac] symbol  : method parseIdentifier(java.lang.String)
          [javac] location: class mondrian.olap.Util
          [javac]       element = Util.lookup(query, Util.parseIdentifier(trimmed));
          [javac]                                        ^
          [javac] 8 errors
          [javac] 9 warnings

      Thanks a lot for your help,

    • Ati Rosselet

      Ati Rosselet - 2008-09-09

      well... this looks as though you aren't compiling against the correct mondrian version. Which version are you using??  For me:
            element = Util.lookup(query, Util.parseIdentifier(trimmed));
      compiles just fine.  You need to make sure that the mondrian supplied with the jpivot dist isn't being used instead... 

      also... you just override the catalina in your file - eg:
      (see.. I use 5.5.12 and all is ok)

      don't recognize the ant problem at all though...

    • Christian Chris

      Christian Chris - 2008-09-11


      I've set up the property mondrian.version = HEAD in build.xml from jpivot-1.8.0 (not the patched version from Will) and it compiles ok, so the pb seems to be solved.

      The mondrian.trace.level=1 property still seems not to be honored though :-(

      Anyway thanks a lot for your help!

      • Julian Hyde

        Julian Hyde - 2008-09-12

        As of mondrian-3.0 (specifically, change 10499) mondrian.trace.level is obsolete. See the comment in

        # Note, "mondrian.trace.level" has been replaced with a new log4j category
        # "mondrian.sql" in DEBUG mode.  This category can be configured to log in a
        # separate file or as part of the debug output.

        Also see the configuration guide, .


    • Christian Chris

      Christian Chris - 2008-09-15

      Hi Julian,

      thanks for the hint.  BTW could you kindly give an example of how to activate SQL logging ?  There's no example in included with jPivot, neither in the config guide.  In fact I could not find the comment you mention in mondrian-


      • Julian Hyde

        Julian Hyde - 2008-09-15

        Will Gorman wrote a good blog entry on the subject, entitled "log4j, Mondrian MDX and SQL Logging", . I reproduce it here because the server seems to be offline:

        > I’ve always struggled to get log4j working perfectly within
        > the Pentaho BI Platform.  Before the release of JBoss 4.2.1,
        > there was a log4j.xml conflict between JBoss’s config and
        > regular web applications.  Now that Pentaho 1.7 PCI by
        > default runs in JBoss 4.2.1, we finally have a hastle free
        > way to manage logging.
        > We can now manage all of Pentaho’s logging within the
        > pentaho war’s WEB-INF/classes/log4j.xml file.  Another
        > reason why this is important to note is that Mondrian’s SQL
        > and MDX logging, something we’re always taking a look at,
        > moved from a Mondrian debug property to a log4j category
        > in Mondrian 3.0.  To get MDX and SQL logging out of
        > Mondrian:
        > Add two new categories to the log4j.xml file:
        > <category name="mondrian.sql">
        > <priority value="DEBUG"/>
        > </category>
        > <category name="mondrian.mdx">
        > <priority value="DEBUG"/>
        > </category>
        > Also, you’ll want to remove the explicit Threshold element
        > from within the appenders.  When a Threshold is defined in
        > an Appender, it overrides the individual category
        > thresholds.  log4j is a powerful logging tool, but sometimes
        > it can be difficult to configure.

  • Anonymous - 2010-09-30

    hello i am new in this, i downloaded the jpivot and put on Tomcat to run, but error, what other things i need to install to make it run? Do i need to install mondrian? What version i need to install?


Log in to post a comment.

Get latest updates about Open Source Projects, Conferences and News.

Sign up for the SourceForge newsletter:

No, thanks