Note Server side scripting mentioned in this page is under development
Crafter rivet for Grails provides component model to dynamically add and remove components from your application.
What are components?
Components are small widget like applications running in one of the section of your application page. Some examples of components are Upcoming Events Component, Calendar Component, News Feed Component, List Of Holidays Component etc
Why do we need components?
Information contained in the components are dynamic. These widget-like components could be added or removed from your web-application on need basis. Information contained in the component or its appearance like color, border, font could be changed on the fly without the need to restart the application. This is possible because Crafter rivet for Grails component model allows user to author content of the application using authoring environment provided by WCM like Alfresco.
What are the features provided by Crafter rivet for Grails component model?
Crafter rivet for Grails provides the ability to dynamically add components to your application using WCM's user interface. For example, a user can use Alfresco's authoring environment add, edit and remove the components to the application.
User can edit the following in Alfresco
- Contents of the component
- GSPs - to modify the layout and style of the component
- Controllers - to modify the behaviour of the controller
- Services - to modify the underlying service which reads the source of contents.
- POGOs - to add, remove or update the attributes of domain objects which represents component items.
See 4. Server-side Scripting for more detailed explanation with example
The ability of authoring most of the application artifacts including programming artifacts like Grails files dramatically reduces reliance on IDEs and technical know-how. It also reduces the "turn-around" time for making changes effective. It gives more power and control from content managers.
Using Crafter rivet for Grails component model doesn't require application re-starting. Editing of list contents doesn't require thorough technical knowledge. One can use Alfresco's web forms to edit the contents and publish it to make the changes effective.
What are the different types of Components?
Currently Crafter rivet for Grails provides List Components and Table Components. List components are the components for list of items. Examples of list components are Office Locations, Upcoming events, Quotes of the day, Employees of the month, management tip of the day etc.
In future we plan to add other types of components like,RSS component, weather component, Ad components etc.
Table components are components which have key-value pairs type of information. For example Upcoming holidays (date, holiday description), Upcoming birthdays (Day and name), upcoming events (date, event description) etc
Examples of RSS components include news feeds. Weather components and Ad component's name are self-explanatory.
What are the components and features planned for future?
In future we may provide the ability to add as many components you like of each type (currently one component of each types are planned), relative ordering of components( currently the order of the components are fixed), placement of the components(currently the components are placed to the right-rail section).
As we implement the currently planned features we may come up with more of them and implement them based on the necessity.