Last week, I successfully installed Pentaho BI Server Community Edition. It wasn’t as easy as I expected. I did follow a really good tutorial from David Fombella at http://anonymousbi.wordpress.com/2013/12/15/pentaho-bi-server-5-0-1ce-mysql-installation-guide/ Like many people, I did have the famous 404 error. It’s not a big deal, there is no error that can’t be explained with the log files, right ?
Consider the following as an extension of the tutorial
Be careful at step #5 and don’t forget to delete tomcat/conf/Catalina/localhost/pentaho.xml . Keep in mind that every time you modify tomcat/webapps/pentaho/META-INF/context.xml, pentaho.xml has to be deleted because it’s an exact copy of context.xml.
Don’t copy/paste the configuration provided in the tutorial for pentaho-solutions/system/jackrabbit/repository.xml (Step #6) because the CLASS attribute of the all the nodes is missing ! The XML file already has examples that you can copy past with all the nodes and the proper attributes.
Pentaho.xml is not the only config file that is duplicated. I spent HOURS searching the node with the missing class attribute in JackRabbits’s repository.xml (yup, I did copy paste from the tutorial..). I ended up reverting all my modifications and I still had the missing class error in the log file, over and over. The fact is: if you do start pentaho with the missing class attribute in repository.xml, it will create a folder named pentaho-solutions/system/jackrabbit/repository/ which seems to have generated/copied files based on the configuration. The problem is it generates a file with a missing class attribute ! It took me too long to realize pentaho-solutions/system/jackrabbit/repository/ IS NOT PART OF THE DEFAULT INSTALLATION. It’s generated. If you screw up the config like me, DELETE THE ENTIRE FOLDER.
Another thing you have to know is about the folders tomcat/work/Catalina and tomcat/temp. Both folders contain temporary file that can be removed. But the folders themselves must exist! For an unknown reason, my tomcat/temp folder was missing and that prevents Jackrabbit to start properly with the not-so-useful error:
Error while setting up JCR repository:
javax.jcr.RepositoryException: failed to persist repository state:
failed to open output stream to file: /meta/rootUUID
So, if you are getting problems with the installation like many people, including myself have, just execute this every time you change a config file. It will allow to start with a clean environment.
rm -rf tomcat/logs/*
rm -rf tomcat/conf/Catalina/localhost/pentaho.xml
rm -rf tomcat/temp/*
rm -rf tomcat/work/Catalina
rm -rf pentaho-solutions/system/jackrabbit/repository
I hope it could save you time !
Oh! One last thing..don’t try to run it on a 1Gb RAM server.. it won’t work. :)