Executable WAR

Project Resources

Mentor

Name of Mentor

Assigned Contributor

Michael Vorburger

Project Overview

Overview

The executable WAR file will make the installation process easier for end users. You simply launch the war via java -jar mifos.war without any download of the Jetty web application container required. 

Background and Business Need

Ease of installation of Mifos is one of the areas we must continue to address to make Mifos more accessible to MFIs in any region or IT environment.

The executable WAR will ease administrative tasks for the community like setting up new demo instances and test servers. Its biggest value is its potential for production environments (MFI users).  The executable WAR itself removes one additional step from the installation process by removing the need to separately download and install Jetty.

The Executable WAR moves community one step closer towards a Mifos Installer. 

Project Supporters(s)

Multiple MFIs who've faced difficulty with the installation process. 

Project Details

For full details see the issue and mailing list thread linked to below.

Here is how it works: If you build that branch, you'll find that the
war/ module now packages two WAR files: the mifos-TEMP-nonexec.war
(which is the same as the one before), and the mifos-exec.war (81 MB
instead of the previous 76 MB; this mifos-exec.war is the ultimately
the final mifos.war artifact that gets deployed into Maven and bundled
in the mifos-$

Unknown macro: {env.BUILD_TAG}

.zip). For simplicity's sake and to avoid
any end-user confusion, I suggest that only that new one shall be
distributed as mifos.war, not two different ones. One could then start
Mifos, without requiring an external Jetty (or Tomcat 7.0), simply via
:

    java -Xmx1024m -XX:MaxPermSize=256m -jar mifos.war 9090

The last (and only) CLI arg is the HTTP port. Configuration is "as
usual" ([http://mifosforge.jira.com/wiki/display/MIFOS/Mifos+Configuration+Locations\|../../../../../../../../../../display/MIFOS/Mifos+Configuration+Locations|]),
nothing changes about that with this approach.

The same mifos.war works, of course, still like a "normal" WAR that
can be deployed into a "classic" (non-embedded) external Jetty
container.

Project Status

Code for executable WAR has been merged into master and is awaiting patch review.  Issue will be closed once fully merged into master. 

Additional Information