There is also a review of TinyPM available on the same site. We had to make to some adjustments to the install procedure to make it run on Tomcat 6.x. This is our installation procedure (we assume you allready have a tomcat setup).
Step 1: Download the source and extract
We went for the 1.2 version named tinypm-1.2-tomcat5.5.zip
mkdir tinypm-1.2 cd tinypm-1.2 unzip ../tinypm-1.2-tomcat5.5.zip
Step 2: Setup the database
Create a database tinydb with user tinyuser and password tinypassword
mysql -u youraccount -p
mysql> create database tinydb character set = 'utf8' COLLATE= 'utf8_general_ci'
mysql> grant select, update, insert, delete on tinydb.* to 'tinyuser'@'localhost' IDENTIFIED BY 'tinypassword';
mysql> FLUSH PRIVILEGES;
Step 3: Load the schema and data into the database
cd database/mysql mysql -u youraccount -p mysql> \u tinydb mysql> \. create_schema-1.2.sql mysql> \. create_data-1.2.sql cd ../..
Step 4 : Extract the war in the tomcat dir
Unzip tinypm.war to your %CATALINA_HOME%/webapps/tinypm
Step 5: Configure the username, database, password in the application
%CATALINA_HOME%/webapps/tinypm/META-INF/context.xml
<Context> <Resource name="jdbc/tinypmDatasource" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="tinyuser" password="tinypassword" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/tinydb" testWhileIdle="true" validationQuery="SELECT 1;" /> </Context>Step 6: Copy the required jars to the tomcat directory
Copy the jars located in the dependencies dir to the library of your tomcat install
cd dependencies cp activation.jar mail.jar naming-factory-dbcp.jar %CATALINA_HOME%/lib
Download the MySQL Connector/J 5.1.x (the JDBC driver for MySQL Server) fro http://dev.mysql.com/downloads/connector/j
cp mysql-connector-java-5.1.7-bin.jar %CATALINA_HOME%/libStep 7: Remove jars from the war (to make it actually work)
Up until now, everything was straight out of the tinyPM install manual. If you would start tomcat right now you would face some errors.
error 1: all JSP pages would fail with a null pointer in the jspInit
the reason is that tinypm bundles the jsp-api.jar file and overrides the tomcat jsp-api.jar with that. So we have to remove the one in
$ find %CATALINA_HOME% -name jsp-api.jar
./apache-tomcat-6.0.18/webapps/tinypm/WEB-INF/lib/jsp-api.jar
./apache-tomcat-6.0.18/lib/jsp-api.jar
$ rm apache-tomcat-6.0.18/webapps/tinypm/WEB-INF/lib/jsp-api.jar
error 2: "java.lang.LinkageError: loader constraint violation"
$ find %CATALINA_HOME% -name el-api.jar
./apache-tomcat-6.0.18/webapps/tinypm/WEB-INF/lib/el-api.jar
./apache-tomcat-6.0.18/lib/el-api.jar
$ rm apache-tomcat-6.0.18/webapps/tinypm/WEB-INF/lib/el-api.jar
Step 8: (re-)Startup tomcat
%CATALINA_HOME%/bin/start.shStep 9: Install License
In order to obtain a free license you have to create an account for this and then you can request a free license. This will give you a license file tinyPM-1.0.CE.lic
To install the license login as admin/admin, and go to the tinyPM settings page to install it.
Step 10: De-activate the Admin user
TinyPM's free license allows up to 5 users. By default admin counts for 1 user. What you can do is to disable the user admin and give another user admin privileges.