A Mondrian connection is a URL which contains a reference to an XML file containing a Mondrian schema definition, information to connect to the JDBC database which holds the data, and various other parameters. For example,
Embedded within the connect string URL is another URL, here
Provider=Mondrian; Jdbc='jdbc:mysql://localhost/foodmart'; JdbcUser=foodmart; JdbcPassword=foodmart; JdbcDrivers=com.mysql.jdbc.Driver; Catalog=file:demo/FoodMart.xml
file:demo/FoodMart.xml, from where Mondrian should load its schema.
Until now, the URL following the
Catalogkeyword could only one of the small number of protocols supported by java.net.URL, such as 'http' or 'file'. I've just changed Mondrian to use Jakarta Commons VFS to resolve URLs, which is a more powerful and extensible scheme.
With VFS, you can use the same builtin protocols, some new builtin protocols, and even define your own protocol. For example, when used within Pentaho BI Platform, Mondrian could use the URL
to reference a Mondrian schema file stored within Pentaho's solution repository. This is possible because the Pentaho folks have exposed their solution repository as a custom filesystem.
You can even create a URL which references a file within a JAR within a zip that exists on an FTP site.
This change will be released as part of mondrian-2.3.