[Mondrian] mondrian: XMLAException and Olap4j

Michele Rossi michele.rossi at gmail.com
Fri Aug 31 09:59:31 EDT 2012


On 30 July 2012 23:29, Julian Hyde <jhyde at pentaho.com> wrote:

> On Jul 26, 2012, at 12:52 AM, Michele Rossi <michele.rossi at gmail.com>
> wrote:
> > Mondrian's DefaultXmlaServlet treats exceptions
> mondrian.xmla.XmlaException in a special way using information present in
> that exception to return an XMLA complaint error message.
> >
> > We are using mondrian's XMLA support with our own Olap4j driver and the
> problem is that the only way we have to generate meaningful Xmla error
> responses is to throw "XmlaException" from our Olap4j driver.
> >
> > This is not ideal as it forces us to depend on the whole mondrian
> package just for that XMLAException class.
> Michele,
> I think XmlaException only depends upon the rest of Mondrian (the non-XMLA
> server parts) because it extends mondrian.olap.MondrianException. What
> happens if you make it instead extend RuntimeException?

Even if I did that we'd still need to generate MondrianExceptions in our
code to ensure that the XMLA Servlet handles them correctly.
Also ideally we don't want to depend on the mondrian code at all in our
code, not even on the xmla server bit.
It's ok to depend on olap4j as it defines the API though.

> > As XMLA and Olap4j are intimately related I suggest that we extend the
> Olap4jException class with info such as the faultCode, code, faultString.
> > We could then modify mondrian.xmla.impl.DefaultXmlaServlet to handle
> Olap4jException as well the XmlaException as it does currently.
> I'm not a big fan of specially-typed exceptions, and have no particular
> love for XmlaException, but OlapException doesn't seem to be the right fit
> here either.

Me neither but the XMLA servlet currently uses the error code stored in the
We could look at changing that while maintaining the same behavior but it
might be a bit complicated.

> > I also suggest bringing class XmlaConstants in the Olap4j package,
> perhaps in its Xmla support sub-package.
> Yes, this is the plan. All mondrian.xmla.* code (including XmlaException,
> XmlaConstants and XmlaHandler.XmlaExtra) will become a standalone project,
> called something like olap4j-xmlaserver. It will depend on olap4j (but not
> any particular olap4j driver, nor on Mondrian). Constants which come from
> the XMLA and OLE DB for OLAP will be moved into olap4j (although this may
> take longer, due to olap4j's slower release schedule).

Do we have any idea of when this is likely to happen?
Is anyone doing any work in this area at the moment?

> > I understand that this is not the Olap4j development list but I am
> hoping to find several Olap4j contributors here too.
> > If so could you kindly forward this message on to the relevant list too?
> I think this list will suffice. It will be in the archive.
> Julian

Many thanks,

> _______________________________________________
> Mondrian mailing list
> Mondrian at pentaho.org
> http://lists.pentaho.org/mailman/listinfo/mondrian
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.pentaho.org/pipermail/mondrian/attachments/20120831/22721f69/attachment.html 

More information about the Mondrian mailing list