TICL stands for Tag Interface Component
Library. It is a JSP tag library of WEB interface components. The product
was developed in 2001 after a disappointed with the predominant technologies
at the time (Struts et al.). A major goal of TICL is to bring RAD-like development to the WEB
platform. Programmers can concentrate on logical functionality and build JSP
pages by placing TICL components through tags and responding to user events. Every
component is self-contained and manages interaction with the end-user with little
or no assistance on the programmer's part. Visual appearance of components is
abstracted into a high-level styles framework.
TICL enjoyed a short success and was purchased by companies such as Oracle and
Goldman Sachs. It was reportedly used to teach high-school students about web
programming and in many academic projects.
A technology founded on similar architecture is JavaServer(tm) Faces, a standartized
web UI component framework that has gained a fair share of popularity. Our recent
experience with that technology has resulted in a serious disappointment as well, so we've
decided to keep TICL around and perhaps revive it if there is interest.
What you will find in TICL
Here is an overview of what TICL has to offer:
||A powerful, flexible and extensible server-side event model.|
The server-side event model in TICL encompasses what in mainstream, MVC-based JSP programming
is referred to as the controller logic. Each HTTP request is transformed into
a sequence of server-side events representing user actions, which are then
processed by programmer defined event listeners. Even the predefined behaviour
of all TICL components is implemented through default event listeners of standard
TICL events. The event model is architected similarly to the Java Beans event
model. However, due to the paradigm differences between conventional desktop
application development and browser-based WEB development, several other abstractions
such as event factories, event brokers and event dispatchers have been added in
order to provide more flexibility in terms of design choices.
You can define event listeners for all TICL component related events. You can
control the event engine by inserting new events in the event queue during
processing and/or by cancelling the handling of current events. You can also define
your own event types and have them processed by the event engine, thus plugging
your business logic into the TICL event model.