Child pages
  • Comparing Sakai Display Technologies
Skip to end of metadata
Go to start of metadata


This page contains info and comparisons of the various Sakai compatible display technologies.

What do we want out of a display technology?

  • Easy to use for the developer
    • well structured, low learning curve, good documentation
  • Easy for the designer (Code Separation)
    • easy to use for the UI designer, can change templates without changing code and vice versa
  • Good integration with Sakai
    • portal, widgets, tools, etc...

What display technologies can we use in Sakai?

  • Virtually any Java related display technology can work in Sakai
    • However, there are some caveats
      • Sakai uses a special Servlet to handle redirects and processing of HTTP request variables
      • Portal and widget interaction have to be developed for each technology
  • What about non-Java tech?
    • Things that can connect to Java code via some kind of bridge (like Ruby or PHP) can be used but good integration is unlikely

Current Sakai Display Technologies

ComparativeDisplayTechnologies.ppt - Powerpoint on Comparative Display Technologies



(info)=In middle/Sorta/Neutral




Java Servlets

(error) Easy for Developer - Difficult to work with since everything must be done manually
(error) Easy for Designer - Code and HTML are mixed in one Java file
(error) Integration with Sakai - No real integration with Sakai other than the fact that it is functional

Other notes:

(info) Almost all Java based web technologies are based on Servlets
(info) Tried and tested technology (1997) with strong community and docs
(info) Pure Java code
(minus) HTML is placed in the Java class, impossible for UI designers to work with
(minus) Development this way is painful and slow compared to more modern methods
(info) Average AJAX/Javascript integration


(tick) Easy for Developer - Good docs and fairly easy to get started using it
(info) Easy for Designer - Separation is mediocre and not easy for UI designers to work with
(tick) Integration with Sakai - Currently good but is not really being worked on much anymore

Other notes:

(info) Decent docs and community
(info) Most used display technology in Sakai
(minus) New development in Velocity is discouraged by the community, mostly carried over from CHEF
(info) Average AJAX/Javascript integration


(tick) Easy for Developer - One of the easiest technologies to pick up and start using
(error) Easy for Designer - Code and UI are mixed together in one file, no separation but does resemble html
(error) Integration with Sakai - No real integration with Sakai other than the fact that it is functional

Other notes:

(plus) Dynamic Java web content scripting language, similar to PHP
(plus) Can be changed without restarting the server
(info) Well tested technology with large community, excellent docs, and many books
(minus) Compiled when accessed which can cause a noticeable delay when accessing a page for the first time
(minus) Has many of the same weaknesses that other scripting languages have
(info) Average AJAX/Javascript integration


(error) Easy for Developer - High learning curve and diffcult to work with and get used to
(error) Easy for Designer - Does not use HTML in templates and can include code with the UI, hard to work with for UI designers
(tick) Integration with Sakai - Has widgets and best integration with Sakai (currently) that is being kept up to date

Other notes:

(info) The second most used display technology in Sakai (after Velocity)
(info) MyFaces and Oracle ADF Faces (other JSF implementations), pretty good docs and books
(minus) Pretty heavyweight and has problems in the current version
(minus) Poor AJAX/Javascript integration
(minus) Does not work with browser navigation


(tick) Easy for Developer - Learning curve is moderate but is easy to use once familiarity is gained
(tick) Easy for Designer - Excellent separation of Code and UI, uses pure XHTML templates
(info) Integration with Sakai - Current average but improving rapidly, new widgets being developed

Other notes:

(plus) Good docs and code samples available on the RSF Wiki
(info) Greater separation of UI and code can require more files and lines of code
(info) Not used in Sakai core yet but is fully functional in it and integrates somewhat
(minus) Small user community, no books yet
(minus) Still in development
(plus) Good AJAX/Javascript integration


(plus) Easy for Developer - Uses pure Java and no XML configuration required
(plus) Easy for Designer - Excellent separation of Code and UI, uses pure XHTML templates
(info) Integration with Sakai - Excellent, see the existing tools for the minimal setup required

Other notes:

(plus) Good docs and code samples available on the Wicket Wiki
(plus) Several core tools are now Wicket based and have rich AJAX UI's
(plus) Large user community, several excellent books
(plus) Has been around for a number of years and has a large developer base. Very stable.
(plus) Built in AJAX integration using pure Java

  • No labels


  1. Does Sakai 2 and Sakai 3 use Apache wicket as the display technology?

    1. Of course, If you use "Sakai's App Builder", you can create a Sakai project using wicket by wizard.

  2. It's interesting, the bottom line is "RSF is recommended", It seems that RSF was stopped

  3. We have started using Sakai CLE and intent to add a dash board tool that is quite rich in UI that include more graphs and charts.

    In summary we will using the below features to support our UI screens.

    1. Graphs (We want to use D3.js) for reporting functionalists.
    2. Html / Html5 (reusable Frames / panels …, hyperlinks, addition and removal of tabs )
    3. Expand / Collapse feature
    4. Inserting photos / images with zoom support
    5. Inserting videos in compressed format
    6. Dynamic data changes on GUI in terms of graph or latest test summary details (ajax calls or any other similar technology to fetch data without user notice)
    7. Customize page + CSS support
    8. Inserting tables with huge data
    9. Interactive forms / jsp pages
    10. Sakai GUI look and feel changes (horizontal tables changed to vertical tables ..minor alignments)
    11. Enable . disable - components / screens / tools / form elements
    12. Uploading files (not sure if required)
    1. Hi Arun,

      How is the project going? Is there any information, blog or code we can see? I'm back to developing with Sakai and any help is very useful