Vroom Framework

Vroom Framework

Vroom Framework is Java based web application development framework. It is written using J2EE 1.4 Specifications to make compatible with all J2EE 1.4 compliant Web/Application Servers.

History

Vroom Framework is architectured and developed by Farrukh Ijaz s/o Mohammad Riaz in March 2008. It was originally designed with a concept of altering the source code of web pages at run-time based on a configuration file (vroom-config.xml) to create binding between the HTML DOM events and server side Java methods.

Vroom-2, which is the latest version of Vroom Framework, has been revamped to eliminate all the limitations of the first version.

Architecture

The framework consists of following elements:

  • Core API: The API of the framework is packaged as vroom.jar which contains filter, controller, and other helper classes. The filter and controller is configured by defining entries in web.xml file of the web application.
  • JavaScripts: There is one JavaScript file named vroom.js which is part of the framework but it's not packaged as vroom.jar file. It's placed in WEB-INF folder of the web application. The reason for keeping it outside the package is to provide the developer opportunity to improve the existing functions as well as to include additional functions if required.
  • Configuration File: Once the framework is setup, a configuration file is maintained for the web application to instruct the framework, how to perform certain actions. The file is typically named as vroom-config.xml. It's placed in WEB-INF folder and specified in the config-file attribute of the filter definition in web.xml.

Installation and Configuration

The framework's latest distribution can be obtained from [http://www.sourceforge.net/projects/vroom/ Project's website] . To install the framework, following the instructions below:

  1. Download the latest Vroom-x.x.x.zip file and extract it to the location which is normally used for java libraries e.g. C:CLASSPATHVroom-x.x.x.
  2. Create a web application and copy the contents available in Vroom-x.x.xWEB-INF folder of the library to your web application's WEB-INF folder.
  3. Define the following entries in web.xml of the application:
    VroomFilter net.openkoncept.vroom.VroomFilter config-file /WEB-INF/vroom-config.xml VroomFilter *.jsp VroomController net.openkoncept.vroom.VroomController upload-file-size-threshold 1024000 upload-file-temp-folder /WEB-INF/temp VroomController /vroom
    Note: You can change "config-file, upload-file-size-threshold, upload-file-temp-folder" attributes. However, "url-pattern" for "VroomController" have to be /vroom. Also remember, the "filter-mapping" is very important in terms of intercepting the requests. If you want to intercept "Html pages (*.html), Struts Actions (*.do) or JSF pages (*.faces)," you need to define separate "filter-mapping" for each of them, otherwise the framework won't be able to manage them.
That's all related to Installation and Configuration of the framework and web application is ready to utilize Vroom Framework.

How it works?

Vroom Framework can manage anything related to HTML DOM, including Document, Window and Navigator objects. The framework can be used independently or it can be integrated with other Model-2, MVC frameworks. In some aspects, Vroom Framework provides better control of your website e.g. You may want to include Google Analytics JavaScript to your webpages. To do that you probably use one of the following approaches:

  • Open every webpage and paste the JavaScript code Or
  • Use a separate html/jsp file for JavaScript code and modify every webpage to include the include statement Or
  • Use tiles approach if you're using Struts Framework
The first two approaches are quite time consuming; the second approach does not work with HTML pages and in case of third approach, not all applications are built on Struts Framework. Vroom Framework eliminates all this hassle and provides you an easy to use approach to inject such type of scripts by defining webpage element in vroom-config.xml file. Below is the sample webpage definition to accomplish the goal:
18+
© Academic, 2000-2024
Dictionaries export, created on PHP,
Joomla,
Drupal,
WordPress, MODx.

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”