JSP-2.0 Reusable Dialog Components (RDC) ---
a framework for creating JSP taglibs that
aid in rapid development of voice and multimodal applications.
Project Motivation
Server-side generation of HTML has proven an effective way of
generating the user interface for visual Web applications that
are implemented using server-side application frameworks such
as Struts. Over time, the effort involved in such HTML
generation has been reduced by the availability of various JSP
tag libraries that abstract away the minutiae of HTML
markup. The goal of the RDC project is to achieve for voice
applications what JSP tag libraries have already achieved in
the world of visual Web applications.
The voice application space is seeing rapid growth with the
maturation of speech technologies along with the arrival of a
stable and robust voice programming model as defined in the
W3C
VoiceXML 2.0 REC. A necessary next step in mainstreaming the
development of server-side voice applications within
environments like Tomcat is the availability of the appropriate
tag libraries that help isolate the JSP developer from the
intricacies of spoken interaction. The goal is to help package
specialized speech design skills in the form of JSP tag
libraries that make it possible for JSP developers to easily
speech-enable Web applications.
Project Overview
The RDC taglib project provides the following pieces:
A small collection of speech dialog components that aid in basic user interaction.
A collection of sample applications that demonstrate the use of these components.
An extensible JSP-2.0 framework for implementing additional speech components that can collaborate in producing complex spoken interaction.
All functionality is implemented either directly as JSP-2.0
tag or tagx files, or as Java classes that implement
the equivalent JSP-2.0 tag implementation interfaces. Dialog
components come with speech grammars authored as
srgs files, a set of default prompts, and the
associated Java beans that implement validation of the data collected by that component.
The code is under active development, and we are continuing to evolve and enrich the basic framework as we exercise the presently available functionality by authoring new components and by using these components in real-world voice applications.
All components in the RDC taglib produce VoiceXML 2.0 that can be served to any VoiceXML 2.0 compliant voice browser.
The generated applications can be deployed to a standard Tomcat server and be accessed by a VoiceXML 2.0 compliant voice browser.
Requirements
This tag library requires JSP 2.0 support and has been developed on Tomcat 5.0.
It depends on the following libraries, many of which can be obtained from various Apache projects:
- jstl.jar and standard.jar --- JSTL 1.1
- jsp-api.jar --- for building custom tags
- commons-el.jar --- for delayed EL evaluation
- struts.jar, commons-digester.jar and commons-beanutils.jar --- for struts examples
- commons-logging.jar --- for logging in taglib and sample applications
A majority of the tags implemented by this tag library have been
created as .tag files.
Tag handlers implemented in Java extend JSP-2.0's
SimpleTagSupport.
|