[Mondrian] begining with olap4j

Kezern kezern at gmail.com
Mon Jun 22 11:51:01 EDT 2009


Thanks again Julian,
I always search in google (my best friend) for my problems, and of course I
have commons-pool.jar in my path.
Now I'm rebooting the system (just in case).

2009/6/22 Julian Hyde <jhyde at pentaho.com>

>  When faced with an error stack, you should look for the error message and
> google it. This is the error:
>
> NoClassDefFoundError: org/apache/commons/pool/ObjectPool
>
> And google tells you that  you need to put commons-pool.jar on your path.
>
> Julian
>
>
>  ------------------------------
> *From:* Kezern [mailto:kezern at gmail.com]
> *Sent:* Monday, June 22, 2009 8:43 AM
> *To:* jhyde at pentaho.com
> *Cc:* Mondrian developer mailing list
> *Subject:* Re: [Mondrian] begining with olap4j
>
> Hi Julian,
> Thanks for your answer. I have made some changes following your
> instructions.
> I have a postgresql database and a cuble defined into mondrian in a xml
> file.
> Now my code is as follows:
>         Class.forName("mondrian.olap4j.MondrianOlap4jDriver");
>         OlapConnection connection =
>             (OlapConnection) DriverManager.getConnection(
>
> "jdbc:mondrian:Jdbc=jdbc:postgresql://localhost:5432/CdM_db;JdbcUser=postgres;JdbcPassword=Tbcrkpi47a8;"
> +
>
> "Catalog=/descargas/apache-tomcat-5.5.27/webapps/mondrian-embedded/WEB-INF/queries/tickets4.mondrian.xml;"
> +
>             "Role='California manager'");
>         OlapWrapper wrapper = (OlapWrapper) connection;
>         OlapConnection olapConnection = (OlapConnection)
> wrapper.unwrap(OlapConnection.class);
>         OlapStatement statement = olapConnection.createStatement();
>
> And I get this error:
> Exception in thread "main" mondrian.olap.MondrianException: Mondrian
> Error:Internal error: Error while creating connection pool (with URI
> jdbc:postgresql://localhost:5432/CdM_db)
>     at
> mondrian.resource.MondrianResource$_Def0.ex(MondrianResource.java:785)
>     at mondrian.olap.Util.newInternal(Util.java:1435)
>     at
> mondrian.rolap.RolapConnection.createDataSource(RolapConnection.java:396)
>     at mondrian.rolap.RolapConnection.<init>(RolapConnection.java:173)
>     at mondrian.rolap.RolapConnection.<init>(RolapConnection.java:117)
>     at mondrian.olap.DriverManager.getConnection(DriverManager.java:110)
>     at mondrian.olap.DriverManager.getConnection(DriverManager.java:74)
>     at
> mondrian.olap4j.MondrianOlap4jConnection.<init>(MondrianOlap4jConnection.java:111)
>     at
> mondrian.olap4j.FactoryJdbc3Impl$MondrianOlap4jConnectionJdbc3.<init>(FactoryJdbc3Impl.java:110)
>     at
> mondrian.olap4j.FactoryJdbc3Impl.newConnection(FactoryJdbc3Impl.java:30)
>     at
> mondrian.olap4j.MondrianOlap4jDriver.connect(MondrianOlap4jDriver.java:109)
>     at java.sql.DriverManager.getConnection(Unknown Source)
>     at java.sql.DriverManager.getConnection(Unknown Source)
>     at olap.App.main(App.java:22)
> Caused by: java.lang.NoClassDefFoundError:
> org/apache/commons/pool/ObjectPool
>     at
> mondrian.rolap.RolapConnection.createDataSource(RolapConnection.java:392)
>     ... 11 more
>
> What I'm doing wrong?
>
> 2009/6/19 Julian Hyde <jhyde at pentaho.com>
>
>> Your connect string is wrong. Something like
>>
>> jdbc:mondrian:Datasource=jdbc/SampleData;Catalog=./foodmart/FoodMart.xml;
>>
>> or
>>
>>
>> jdbc:mondrian:Jdbc=jdbc:mysql://localhost/foodmart;JdbcUser=foodmart;JdbcPas
>> sword=foodmart;Catalog=./foodmart/FoodMart.xml;
>>
>> Always starts 'jdbc:mondrian:' if you're using the mondrian olap4j driver,
>> or 'jdbc:xmla:' if you're using the XMLA driver.
>>
>> Then you need 'Datasource=' or, more commonly, 'Jdbc=' to give it the URL
>> of
>> the underlying database.
>>
>> Other options for the mondrian driver are documented here:
>>
>>
>> http://mondrian.pentaho.org/documentation/configuration.php#Connect_string_p
>> roperties
>>
>>
>> Julian
>>
>>
>>
>> > -----Original Message-----
>> > From: mondrian-bounces at pentaho.org
>> > [mailto:mondrian-bounces at pentaho.org] On Behalf Of Kezern
>> > Sent: Friday, June 19, 2009 12:30 AM
>> > To: mondrian at pentaho.org
>> > Subject: [Mondrian] begining with olap4j
>> >
>> > Hi all,
>> > I have just started with mondrian and olap4j. I'm trying to
>> > build a java
>> > class which connects to my mondrian and extract some data.
>> > I have deployed the mondrian-embedded.war into my tomcat and
>> > I have made
>> > some test with jpivot.
>> > Now I'm building the new class in eclipse following the
>> > instrucions of
>> > the olap4j functional specifications.
>> > I have written this class.
>> >
>> > package olap;
>> >
>> > import java.sql.DriverManager;
>> > import java.sql.SQLException;
>> > import org.apache.log4j.Logger;
>> >
>> > import org.olap4j.*;
>> >
>> > public class App
>> > {
>> >     public static void main( String[] args ) throws
>> > ClassNotFoundException, SQLException
>> >     {
>> >         System.out.println( "Hello World!" );
>> >         Class.forName("mondrian.olap4j.MondrianOlap4jDriver");
>> >         OlapConnection connection =
>> >             (OlapConnection) DriverManager.getConnection(
>> >
>> > "jdbc:mondrian:local:jdbcURL=jdbc:odbc:MondrianFoodMart;" +
>> >             "Catalog=/WEB-INF/queries/FoodMart.xml;" +
>> >             "Role='California manager'");
>> >         OlapWrapper wrapper = (OlapWrapper) connection;
>> >         OlapConnection olapConnection = (OlapConnection)
>> > wrapper.unwrap(OlapConnection.class);
>> >         OlapStatement statement = olapConnection.createStatement();
>> >
>> > //        OlapResult result =
>> > //            statement.execute(
>> > //                "SELECT {[Measures].[Unit Sales]} ON COLUMNS,\n" +
>> > //                "  {[Product].Members} ON ROWS\n" +
>> > //                "FROM [Sales]");
>> >     }
>> > }
>> >
>> > And I get this error when the class tries to make de connection:
>> > Exception in thread "main" mondrian.olap.MondrianException: Mondrian
>> > Error:Internal error: Connect string
>> > 'local:jdbcURL=jdbc:odbc:MondrianFoodMart;
>> > Catalog=/WEB-INF/queries/FoodMart.xml; Role=California manager' must
>> > contain either 'Jdbc' or 'DataSource'
>> > I have been looking for a solution but I couldn't find one.
>> > Thanks every body.
>> >
>> >
>> >
>> >
>> > _______________________________________________
>> > 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/20090622/19ddfe3b/attachment.html 


More information about the Mondrian mailing list