Friday, December 12, 2014

Open Source Emailing Marketing Web App

Requirement

  • To be able to  create a HTML page with images on it,
  • To be able to email the created HTML Page (AKA Flyer/Brochure) to 500 or more client emails with a single click of a button.
  • The User wants to monitor the transmission statuses of the emails sent.
  • An online demo 

Use case Diagram for a Simple Email Marketing System

Solution

git clone: https://github.com/byorn/emailmarketting.git





Note: To make this software online, we will have to make this a maven a project and  it would have to be deployed to Open Shift.

Prerequisites

  • Install XAMP or LAMP 
  • Create a database called ehammer
  • Run the SQL Script to create the tables.
  • Make sure the file paths in the Web.xml exist.


Technical Features To Notice

  • Single Page Web App with JSF Prime Faces and JQuery 
  • Achieving connection pooling with Hibernate C3PO. 
  • Achieving Asynchronous Email Sending with Quartz as this product will be initially deployed on a Cheap Tomcat Hosting Environment that does not support the Java EE 5 Web Profile or Asynchronous Servlets.
  • Configured Log 4J.


Improvements to be made

Migrate to a Maven or Gradle 
To be able to host in JBoss
To use Postgres as the Database
To deploy to Open Shift.


Any volunteers for the project is most welcome!