EMC Developer Network

What is a Web Development Kit (WDK) 4.x component?
  Document Overview/Objective

This document aims to explain what a WDK 4.x component is, what it does and how it does it. The target audience is an experienced Documentum developer who is new to the WDK.

Note: This paper does not relate to WDK 5.x components

What is the WDK ?

The WDK is not a product - it is a "toolkit". It is a set of components that you can use to build web-based applications.

  • These components can be placed in web pages to build solutions.
  • The components use an underlying configurable framework that is used to tie the components together.
  • The WDK also makes use of the DFC services to provide the necessary 'Business Logic'.
  • You can build your own 'components' which make use of existing WDK components, the framework or the DFC services.

What is a component?

We define a component as being all of the 'bits' that are required to implement a single piece of functionality.

A component has a container and may have one or more supporting files. If the component has a UI then the container will be a JSP file, otherwise it will be a servlet.

The supporting files could include Stylesheets; class files; config files; internationalization (I18N) resources - in fact any files that the component makes use of.

Example

(Note: This example component has been simplified for illustrative purposes)

A WDK component might implement a tree control that represents a Cabinet/Folder hierarchy. This component is deemed to be all of the 'bits' needed to implement the tree-view.

As this component has a UI, (the tree-view itself), it would be contained within a JSP page. The JSP page would make reference to the basic DFC class files, other Java class files, a stylesheet and would get configuration information from an XML file. The component may also need internationalization information which would also be included in the component.

The following diagram illustrates the 'pieces' that make up this typical component.

What is the framework?

The framework is all of the pieces that the WDK components use to operate and interact. It determines their behavior, look-and-feel and allows them to communicate with each other. The framework lets you configure the component's localization (L10N), branding/style, content-sensitivity, logging, behavior (redirection, error-handling etc.), presentation etc.

Configuration is based in XML and allows components to be data-driven without the traditional coding that customization involves (e.g. extending a Java class). It is this approach that makes the WDK suited to rapid, flexible and very powerful application development.

What are the DFC services?

The DFC provides a set of services to the WDK that enables it to manage content on the application server. These support the ability to create and delete documents, folders, and cabinets, manipulate the inbox, manage workflows, perform searches, etc. The WDK supplies a consistent URL-based command framework that allows an application to dispatch DFC services. The WDK also provides the ability transfer content to and from the client PC.

Why did Documentum take this approach?

All of the functionality provided by the WDK components could be achieved by using JSP pages and the DFC. However, this would create a lot of work for our each of our customers; the WDK components implement most of the functions you would ever require. This makes it faster, and therefore cheaper, for you to build web-based applications.

As a developer, you can elect to use as much, or little, of the WDK functionality as you choose. For example, you may elect to only use the DFC services and none of the components, alternatively you may choose to use the whole WDK/DFC suite and simply configure it via the framework configuration files to suit your needs.

What technologies should I be familiar with to use the WDK?

One of the design goals in implementing the WDK was to leverage existing industry standards. The main technology used is Java, thus it is essential to have a general understanding of Java and its development environment

If the following words mean something to you then the WDK should not hold any great surprises... HTML, XML, JSP, servlets, applets, class files, JavaScript and the DFC.