Hi ,

Thanks for the steps.This would really eliminate troubles to add the custom
prop file manually. :)

regards.

On Wed, Feb 2, 2011 at 10:12 AM, oscontrib oscontrib <[email protected]>wrote:

> Since my hosting provider supports Tomcat/MySQL, I got roller (from trunk)
> to build a war that deploys out of the box on Tomcat. Here are the steps I
> followed. I hope its useful to others. I had to tweak the pom.xml under the
> weblogger-webapp directory and my pom.xml is attached. The differences are
> minor and highlighted in the docs.. I checked the instructions a couple of
> times and it worked for me on my Ubuntu.
>
> Building and installing roller from trunk but customized for Tomcat/MySQL
>
> Prerequisites : Make sure you have java JDK (I use 1.6) and maven installed 
> on your box.
>
>
> 1) Check out the top of trunk into a roller directory
> svn co https://svn.apache.org/repos/asf/roller/trunk roller
>
>
>
> 2) Make sure the roller-custom.properties file gets bundled into the war. 
> Instead of copying the war over into Tomcat's webapps directory and then 
> exploding it manually, copying jar files and copying the properties file, I 
> use the following technique to build the final war directly.
>
>
> 2.a) mkdir -p roller/weblogger-webapp/src/main/resources
> 2.b) Create the file 
> roller/weblogger-webapp/src/main/resources/roller-custom.properties with the 
> following contents (change the username/password based on what you want to 
> use).
>
>
>      I have attached my version of the file with this email.
>
> ## roller-custom.properties begin
> installation.type=auto
>
> database.configurationType=jdbc
> database.jdbc.driverClass=com.mysql.jdbc.Driver
>
>
> database.jdbc.connectionURL=jdbc:mysql://localhost/rollerdb
> database.jdbc.username=roller_user
> database.jdbc.password=password
>
> mail.configurationType=properties
> mail.hostname=localhost
> ## roller-custom.properties end
>
>
> 2.c) Change the pom.xml file to make mail.jar not a 'provided' jar (since 
> Tomcat doesnt ship a mail.jar in its distribution and we can get maven to 
> download it for us), add the mysql-connector.jar as a dependency . I didnt 
> add activation.jar but usually if you need to send attachments and stuff in 
> the emails it could be added as well. (the pom.xml I use is attached along 
> with this email).
>
>
>         <dependency>
>             <groupId>javax.mail</groupId>
>             <artifactId>mail</artifactId>
>         </dependency>
>
>         <dependency>
>             <groupId>mysql</groupId>
>
>
>             <artifactId>mysql-connector-java</artifactId>
>             <version>5.1.11</version>
>         </dependency>
>
> 2.d) Also change pom.xml to copy over the 
> src/main/resources/roller-custom.properties into the war (add another 
> execution element to the executions element under the maven-resources-plugin 
> (refer to attached pom.xml file)
>
>
>                   <execution>
>                         <id>copy-custom-roller-props</id>
>                         <phase>process-resources</phase>
>                         <goals>
>
>
>                             <goal>copy-resources</goal>
>                         </goals>
>                         <configuration>
>                             
> <outputDirectory>${project.build.directory}/roller/WEB-INF/classes/</outputDirectory>
>
>
>                             <resources>
>                                 <resource>
>                                     <directory>src/main/resources</directory>
>                                     <filtering>false</filtering>
>
>
>                                     <includes>
>                                         <include>**/*.properties</include>
>                                     </includes>
>                                 </resource>
>
>
>                             </resources>
>                         </configuration>
>                     </execution>
>
> 3) Build the project
>
> cd roller
> mvn clean install
>
> 4) cp weblogger-webapp/target/roller.war ${TOMCAT_HOME}/webapps
>
>
> 5) Set up your mysql database (in example below we create a database called 
> rollerdb, with user 'roller_user' and password 'password', because thats we 
> configured in roller-custom.properties in step 2.b )
>
>
> $> mysql -u root -p
> Enter password:
> Welcome to the MySQL monitor.  Commands end with ; or \g.
> Your MySQL connection id is 214
> Server version: 5.1.37-1ubuntu5.5 (Ubuntu)
>
> Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
>
>
> mysql> create database rollerdb;
> Query OK, 1 row affected (0.00 sec)
>
> mysql> grant all on rollerdb.* to 'roller_user'@'%' identified by 'password';
> Query OK, 0 rows affected (0.00 sec)
>
>
> mysql> grant all on rollerdb.* to 'roller_user'@'localhost' identified by 
> 'password';
> Query OK, 0 rows affected (0.00 sec)
>
> mysql> quit;
>
>
> 6) Start tomcat .. and you are good to go if you point your browser to the 
> 'roller' context.
>
>
> ${TOMCAT_HOME}/bin/startup.sh
>
> Hitting the roller context from your browser will show you a page where 
> roller prompts you to create database tables, and then you can register your 
> new user and start blogging :)
>
>
>


-- 
Shelan Perera

Blog   : http://www.shelanlk.com
Twitter: shelan
skype  :shelan.perera
gtalk   :shelanrc

 I am the master of my fate:
 I am the captain of my soul.
         *invictus*

Reply via email to