wcomp-logo WebComp



  home  print

What is WebComp?

WebComp is an experiment on how to compose and configure web-sites from various components (static HTML, Java Servlets, Java server pages and other), by scripting. It includes a scripting language, a component model/framework and a set of basic pluggable components to use with it.

The core of the WebComp implementation is a Java servlet that reads scripts and generates web-pages from them, using components referenced in the scripts.

Main features:

  • Supports a basic pluggable component type (Functions) which are easily implemented as Java classes and instantiated and configured by scripts, using reflection techniques and functional programming concepts.
  • Supports a high level of separation of concerns (aspect oriented design) by allowing flexible chaining of components to handle requests and responses. This leads to more reusable components.
  • Supports easy re-use of website designs and components by scripting inheritance.
  • Basic function-library supports automatic generation of menus from lists of components given in scripts, filtering of static HTML documents, nice framing of content, stylesheets, layout, composing etc.

note

08-Apr-2005: Version 0.10 released - many changes

At last, after a long time, we release 0.10 which has been improved significantly. Among the new features are: multiple inheritance, conditionals/boolean expressions, a new HTML parser and better examples and documentation.

note

07-Jan-2004: Version 0.9 released

The most significant changes are: (1) A construct to override attributes locally for a given function chain. (2) A clarification of the sharing/inheritance/lazy evaluation semantics. There are still issues, however. Upgrade is highly recommended.

note

23-Sep-2003: University project

WebComp is now officially hosted by the University of Tromsų with its own domain name. It is meant to be part of a computer science project, but is also an open source project with a GPL license. Contributions are welcome.

note

01-Aug-2003: Version 0.8 released

Fixed another function instantiation bug and added a JDBC datasource function and a powerful debugger function. Other functions which used database is updated to use the datasource function instead of being hardwired to the PostgreSQL database. Also, documentation is improved and javadocs is now included (still work to be done there though).

note

31-May-2003: Version 0.7 released

The most significant changes are: A fix to a serious problem with function instantiation, and that all statements now must be ended with a semicolon. Also, the '+' operator can be used on lists. Upgrade is recommended.