Sun Logo


Sun Java Studio's Web Application Framework Component Author's Guide

Sun Javatrademark Studio Enterprise 6

817-5404-10



Contents

Before You Begin

Before You Read This Book

How This Book Is Organized

Typographic Conventions

Related Documentation

Documentation Available Online

Tutorials, Mini-Tutorials, and Examples

Online Help

Documentation in Accessible Formats

Sun Welcomes Your Comments

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