Pentaho - full install guide for Glassfish

Published by Stephane PAQUET | 2:43 PM | 6 commentaires »

And here we go!
Just a small note regarding RC1. It seems like there is a bug for the one available to download at the time I'm writing this guide. I recommend to use either previous release such as 1.1.6 and 1.1.7 or to use pentaho source from SVN (what I did).

Now, let's start our step by step approach of Penatho on Glassfish:

  1. Download from svn the latest Pentaho release or version 1.1.7 from Sourceforge.
  2. Download dom4j and jaxen:
    2. download version 1.6.1, unzip and copy dom4j-1.6.1.jar to your glassfish/lib dir.
    4. download version 1.1 beta9, unzip, ant and the copy jaxen-1.1-beta-9.jar to your glassfish/lib dir.
  3. Check that you have MySQL connector/J or PostgreSQL JDBC jar file in your glassfish/lib dir
  4. Now move back to your pentaho_j2ee_deployment dir and edit the following files:
    1. change the rdbms parameter to mysql5 (or postgres or mysql4), put the proper value for solutions.dir when the solutions are not stored as a sibling dir of your application server and check various values such as JRE, etc.
    2. web.xml (located in the webapp folder): there are 2 withe value SampleData, remove one. Check the value of with name solution-path.
    3. hibernate.cfg.xml (located in res/hibernate/mysql5): adapt user and password to the one you are willing to use.
  5. Go to the top of your pentaho_j2ee_deployment dir and launch ant compile in order to have the first part of your pentaho compiled.
  6. I assume step 5 is OK, and not launch ant orion-ear
  7. Create the databases and user(s) on your dbms server (Mysql5 in my case), for this step I suggest you to move to Pentaho forum and look for the post of the Mysql scripts. Use these scripts to create the following database: quartz, shark, hibernate and sampledata.
    Since you are creating database add the following one: pentaho, datasource1, datasource2, datasource3, datasource4, datasource5 (these databases are empty)
  8. Launch glassfish
  9. Create database resources:
    1. Connexion pools associated to the databases you have created in step 7
    2. Check (ping) all the connection pools
    3. Create associated JDBC Resources
  10. Now try to deploy the freshly created orion-ear.jar file using glassfish admin interface or autdeploy directory.
  11. Go for a test http://localhost:8080/pentaho
If every thing is OK you should see something like this:

Nota: in order to make sure the right hibernate.cfg.xml file is used in you orion-ear.jar file you can check the build folder. If the one you are expecting in not in the redo ant compile and check again before doing ant orion-ear. If there is still no change just go for a hard change and copy over them the proper hibernate.cfg.xml files and go for ant orion-ear

6 commentaires

  1. African Man // 2:52 PM  

    Hi Stef,

    Thanks a million for the instructions for both Pentaho and Liferay on Glassfish. I too have been looking at the two and I had installed both on JBoss and was struggling with a PermGem memory error. What are your thoughts on Jboss vs Glassfish?

    I am struggling with performance with liferay do you have any tips?

    Thanks again,

  2. Stef // 10:29 PM  

    Well I used to have JBOSS as my Application Server. But due to the fact that most of the people working with me have a medium IT knowhow I started looking for something easier to manage.

    That's why I moved from JBOSS to Glassfish. Glassfish offers a nice and userfriendly interface. This enable every IT tech or manager to handle quickly the global application. He/She does not have to look at some raw xml file or rude UI.



  3. African Man // 6:12 PM  

    Hi Stef,

    I think I will go with GlassFish thanks to your help. I too am one of those medium IT types and it does help to have a user interface.

    I have a challenge for you. JMagallenes - Http:// I was impressed by some of the features this application has but the documentation on how to deploy as a J2EE it is a bit lacking.


  4. Miles // 6:10 AM  


    Thanks for all the tips for running Liferay on Glassfish. After research, I concluded a month or so ago that I wanted a Glassfish/Liferay/Pentaho solution. (Great minds must think alike.)

    However, I'm having trouble with Pentaho. I can't seem to get pentaho.ear to deploy, and the problem appears to be with web.xml - unless I'm being lead in the wrong direction by the server.

    For starters:

    The .ear builds fine:
    [ear] Building ear: C:\builder\pentaho\dist\orion2\pentaho.ear

    Total time: 1 minute 1 second

    However, here is the error:

    Deploying application in domain failed; Error loading deployment descriptors for module [pentaho] Line 633 Column 11 -- Deployment descriptor file WEB-INF/web.xml in archive [pentaho.war]. The content of element type "web-app" [syntax of /web-app......]

    Deployment descriptor file WEB-INF/web.xml in archive [pentaho.war]. The content of element type "web-app" must match "(icon?,display[same as first message....]

    In my most recent attempt, I've commented out all the resource-ref (as in your Q&D) to see if I could start there in isolating the trouble.

    Naturally, Line 633 is the last line of web.xml. Should I continue to troubleshoot web.xml?

    (Additionally, I am attempting to use mysql5)

    Thankful for your help so far and hoping that I'll be thankful for more.


  5. Carlos // 2:02 PM  

    I am having exactly the same problem as Miles: loading of web.xml at deployment throws the same errors as he points. I have read somewhere that Glassfish 9 only supports web.xml DTD 2.5, but changing the DTD declaration rises new errors, like "node taglib is not allowed".

    I use Glassfish 9_0_01-p01, pentaho_j2ee_deployments-

    I would appreciate any help, thanks.

  6. Niket // 7:36 AM  

    HI All,

    I am very new to pentaho and I am trying to deploy pentaho 1.5.4 on Glassfish but i am facing the problem when i try to make war file out of it . The main reason for this is , what i feel is the build.xml comes with pentaho_j2ee_deployments- is only compatible to JBOSS and tomcat, but not to Glassfish,

    can you please let me know how i can go further on this.

    Thanks in advance.....