Sun Logo


Web Application Framework Component Author's Guide

Sun Javatrademark Studio Enterprise 7 2004Q4

819-0724-10



Contents

Before You Begin

1. Overview and Component Architecture

Component-Based Development (CBD)

What is a Web Application Framework Component?

Web Application Framework Component Libraries

The Web Application Framework Component Library

The Component Class

The ComponentInfo Class

2. Developing Components

Develop Your First Component

Decide the Type of the Component

Create the Component Class

Create the ComponentInfo Class

Create the Component Library Manifest

Create the Component Library JAR File

Test the Component

Ship It!

Web Application Framework Components in More Detail

Distributable vs. Application-Specific (Non-Distributable) Components

Extensible vs. Non-Extensible Components

ComponentInfo in More Detail

Specialized ComponentInfo Interfaces

ExtensibleComponentInfo

Other Types of Specialized ComponentInfo

Standard Implementations of ComponentInfo

3. Developing View Components

View Components

ViewComponentInfo

ContainerViewComponentInfo

Develop a Non-Extensible View Component

Create the Validator Interface

Create at Least One Implementation of the Validator Interface

Create the Web Application Framework Component Class

Create a Custom JSP TagHandler Class

Create the ComponentInfo Class

Create a New Tag Library TLD File

Augment the Component Library Manifest

Recreate the Component Library JAR File

Test the New Component

Ship It!

Develop an Extensible View Component

Create the MissingTokensEvent Class

Create the Web Application Framework Component Class

Create the Extensible Component's Java Template

Create the ComponentInfo Class

Augment the Component Library Manifest

Recreate the Component Library JAR File

Test the New Component

Ship It?

4. Developing Model Components

Model Components

ModelComponentInfo

ExecutingModelComponentInfo

Developing a Non-Extensible Model Component

Developing an Extensible Model Component

Key XML Document Model Design Points

Create the ModelFieldDescriptor Class

Create the Web Application Framework Component Class

Create the Extensible Component's Java Template

Create the ComponentInfo Class

Augment the Component Library Manifest

Recreate the Component Library JAR File

Test the New Component

Ship It?

5. Developing Command Components

Developing an Extensible Command Component

Create the Web Application Framework Component Class

Create the Extensible Component's Java Template

Create the ComponentInfo Class

Augment the Component Library Manifest

Recreate the Component Library JAR File

Test the New Component

6. ConfigurableBeans (Non-Visual Components)

Configurable Bean Example: CommandDescriptor

7. Developing and Distributing Non-Extensible Model, Command and ContainerView Components

Develop a Non-Extensible Model, ContainerView, or Command Component

Distributing a Non-extensible Model, ContainerView, or Command Component

The Object Definition File (non-extensible component metadata)

8. Design Actions

Developing Extensible Components Which Have Component Design Actions

What is a Component Design Action?

Exposing Design Action in ComponentInfo

A. Component Library Structure

Component Library Overview

Component Library Structure

The Component Manifest

Automated Unpacking of Component Tag Libraries (TLD) Files

Automated Unpacking of "Additional Files"

Index