JSPWiki logo
Main page
About

Getting Started

Documentation
Developers
Javadocs
Designers
Sample RSF Apps
Presentations
Acronyms

Downloads
Current Release
Trunk
Distributions
Old Versions

Community
Q&A
Forums
Mailing Lists
Issue Tracker
People

Design
Roadmap
Integrations
Concepts
Philosophy

Pages
Find
Recent Changes
Unused
Undefined
Index

Set your name in
UserPreferences

Edit this page


Referenced by
Developers
Main
PhonebookSWFSample
RSF
RSFforSWF
TemplateCheckingTool




JSPWiki v2.2.33


PureXHTMLTemplating


Pure XHTML templating

RSF provides pure XHTML templating to the developer and the designer. This is achieved using the IKAT renderer which can operate standalone or as an integral part of the RSF framework.

Major Benefits

  • Truly pure XHTML - No custom tags or tag libraries to maintain or teach to your designers
  • Easy layout changes - Modifications to the page layout do not have to affect the Java source code!
  • Division of labor - User experience and web designers can create XHTML mockups which become the application
  • Designer focus - CSS and AJAX work seamlessly in the templates and can both be handled by the designer
  • Valid HTML - Pages are as accessible and well formatted as your templates
  • Reloadable templates - Templates can be changed and will reload automatically without webapp redeployment or server restarts

Sample RSF-ized XHTML template

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns:rsf="http://ponder.org.uk/rsf" xmlns="http://www.w3.org/1999/xhtml">
<head>
   <title>RSF sample</title>
</head>
<body>
   <h1 rsf:id="user-name">Hello UserName</h1>
   <span rsf:id="current-date">Today is 1/1/2006</span><br/>
   <table>
      <tr rsf:id="item-row:">
        <td rsf:id="item-value">item value here</td>
      </tr>
   </table>
</body>
</html>
  • No custom tags, only 1 custom attribute, the rsf:id
  • Uses convention over configuration for rsf:ids
    • string indicates a standard rsf:id which causes dynamic information to be placed in a view (e.g. user-name)
    • string with ":" indicates a loop structure (i.e. branch container) (e.g. item-row:)
    • string preceded with "scr=" indicates a custom RSF processing action (e.g. scr=portal-matter)

Benefits in depth

Truly pure XHTML

  • No custom tags or tag libraries to maintain or teach to your designers
  • Only 1 custom attribute, the rsf:id, which can be placed on any HTML tag
    • NOTE:_ rsf:ids will NOT appear in the the HTML sent to the user, only in your functional templates
  • Custom DTD xmlns:rsf="http://ponder.org.uk/rsf" you can optionally use if you do not want to be warned about the rsf:id attributes by a validator

Easy layout changes

  • Modifications to the page layout do not have to affect the Java source code!
  • Designers can adjust the UI without developers having to get involved
    • As long as the data on the page remains consistent your designers can continue to do layout tweaks

Division of labor

  • User experience and web designers can create XHTML mockups which become the application
  • Developers take the mockups and turn them in a functional app by creating RSF producers to handle rendering logic and standard Java beans to handle processing
  • Designers can then update templates (possibly even while developers are working on the Java code)
  • The rsf:ids become a "common laguage" which the designers and developers use to refer to dynamic content

Designer focus

  • CSS and AJAX work seamlessly in the templates and can both be handled by the designer
  • Easy to modify template using Dreamweaver or your favorite HTML editor
    • No custom editing environments to learn or install

Valid HTML

  • RSF enforces properly formatted XML in templates and provides detailed messages which indicate where improperly formatted lines occur
  • Pages are as accessible and well formatted as your templates

Reloadable templates

  • Templates can be changed and will reload automatically without webapp redeployment or server restarts
  • Minor corrections to errors on pages can be made quickly and easily
  • Designers can adjust working apps in real time in response to user needs



Go to top   Edit this page   More info...   Attach file...
This page last changed on 19-Jul-2007 09:02:52 UTC by AaronZeckoski.