Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Status

I'm still writing this, come back later

Target Release

4.0

Original Authors

DaveJohnson

Abstract

Make The Roller installation process is unacceptably complex. It's having a negative impact on Roller adoption and distracting the Roller community on the user mailing list. We need to make it really easy to install Roller with minimal user interaction and asking user only bare minimum number of questions.

Requirements

  • Easy installation, meaning:
    • Ask users to provide minimum information to get Roller up and running
    • Create and upgrade tables automatically for user
  • Additionally:
    • It must be possible to disable automatic upgrade
    • It must be possible to specify DB and mail via properties or JNDI names

Issues: four options

The Roller installation process is unacceptably complex and I'd like to fix that. I've been thinking about the problem for a couple of weeks now and I've talked to folks in Sun, at ApacheCon and JavaOne about the problem. I looked at configuration features in Tomcat and Glassfish. I also looked at installation instructions for popular Java webapps Confluence, JIRA, Liferay Portal and Blojsom. So far, I've identified four these options:

...

Here are the changes to be made to enable property based installation/configuration:

Change #1: New properties

...

mail.hostname: Host name of mail server for email notification features, if not present then Roller will fall back to JNDI mail-session.
installation.auto
(we: True to enable automatic creation and upgrade of database tables.
JDBC properties: We've already got JDBC connection properties in place)roller.properties, we just need to make small changes to how we use them.

Change #2: Change implementations of the Roller interface (Hibernate and JPA backends)

When creating persistence strategy:

...