Database Driven Screen Builder

  • Authors : null
1 vote
Dependency :
compile ":screen-wiz:0.3"

Documentation

Summary

Installation

grails install-plugin screen-wiz

Description

Description

This plugin allows a developer to assemble screens using meta-data that is stored in the database. Essentially it is a modular templating system for GSPs. Additionally, it can potentially allow an application's user to configure the applications screens at runtime. You can check out the screenshot which shows the process of "building" a screen. The best way to understand how the plugin actually works is by running the demo included with the plugin and perusing the demo code. You can access the demo after installing the plugin into your application by going to the following url… http://server:port/YourApp/screenWizDemo/list

Usage

Domain

This plugin introduces 3 domain classes.
  • ScreenArea - This encapsulates an area on the screen where the plugin will inject the specific items that make up the screen.
  • ScreenItem - These are the field items that relate to a property of a bean.
  • ScreenItemTemplate - These designate a snippet of GSP that will be used to display the related ScreenItem.
These domains relate to each other in the following way. A ScreenArea contains one or more ScreenItems that are each rendered to the screen through a related ScreenItemTemplate.

TagLib

Included with this plugin are following tags:
  • <sw:screenArea/> An "outer" area that will be replaced with the referenced template.
  • <sw:screenItems/> An "inner" area embedded in the template referenced by the ScreenArea that will be iterated over for each ScreenItem referenced by the "outer" ScreenArea.
Note: This plugin has nothing to do with writing wizard-style interfaces. For that type of functionality, I would suggest looking at http://grails.org/WebFlow.

Version History

  • 0.3 - Upgraded to Grails 1.1. Note that this version of the plugin is NOT at all backward compatible with the previous version (0.2)!
  • 0.2 - First usable version of plugin