Build a Documentum Application
Documentum provides the industry's leading content management platform and several client options to access server functionality. Sometimes, however, our customers and partners need to customize the look and feel or behavior of our client tools, integrate with other applications or build custom applications.
Web-based Options
Documentum's open architecture and support for leading Web development technologies gives you the flexibility to choose the development environment that best suits your requirements. Developers can access all standard Document Management functionality either by taking advantage of the Web Development Kit or by using Java Server Pages or Active Server Pages to make calls directly to the DFC and BOF.
Web Applications
Documentum provides several customizable Web clients for Web-based content management. Using these clients, users can perform all standard content management functionality. Developers can use these clients as the starting point for application development, they also have the option of building custom Web-based applications using Documentum's powerful and flexible API.
Customizing Existing Clients
Currently Documentum has two categories of Web clients, those based on the Rightsite platform and those based on the Documentum Web Development Kit (WDK). The WDK-based clients include Documentum Webtop, a comprehensive content management client that offers an easy to configure user interface and fully customizable behavior. WDK-based versions of Webpublisher, Documentum Administrator and Team Manager will be released in early 2003. The original Documentum Intranet Client applications and iTeam, (the predecessor to Team Manager), were developed using RightSite technology. RightSite is a powerful and well-trusted solution and is the basis for many successful deployments, however it is a proprietary development environment and will eventually be phased out as our customer base migrates to WDK. WDK-based clients provide developers with the best customization option as they offer a more open, industry-standard and flexible development environment.
Build Custom Applications
Even though all of the Documentum Web clients are highly configurable and customizable, there are times when custom application development is the best solution. Documentum's development environment offers the programmer many options to build custom Web-based applications, please see the Build Custom Applications node for details.
Building Custom Web Applications
Developers planning Web-based custom applications have a wide range of development options. DFC provides object-oriented access to the Content Server. New in DFC 5.1, the Documentum business objects framework (BOF) provides a framework and a methodology to develop reusable middleware server components for business logic called Business Objects. WDK makes application development fast and easy through a set of tools that encapsulate common content management functionality.
Options
· Documentum Web Development Kit (WDK)
The Documentum Web Development Kit (WDK) provides an application framework, a set of components, a set of user-interface controls, and a set of URL-addressable commands that leverage DFC services. The framework provides the infrastructure used by WDK components to operate and interact. Components are defined as the context-sensitive binding of layout, behavior and configuration that implement some well-defined function. Examples include content transfer for checkin and checkout and a component that can be placed in a Web page to display a tree view of a Content repository (Docbase). Services perform functions such creating and deleting documents, folders and cabinets, as well as manipulate the inbox, managing workflows, and performing searches.
The WDK makes it fast and easy for developers to include content management functionality in their Web-based applications. It should be considered first when planning a Web-based custom application.
· Documentum WDK for Portlets
Through an environment layer introduced in the 5.2.5 release, WDK for Portlets allows WDK components to be easily integrated into business applications built on a portal platform. The environment layer, for example allows WDK component portability and the dispatching of WDK components through portlets in any portal implementing the JSR 168 portlet API specification. Pre-fabricated portlets for core content management functionality are provided by Documentum using WDK for Portlets, and these can be customized and configured using the same generalized methods that are used for all WDK applications and components.
· Documentum Foundation Classes (DFC)
The Documentum Foundation Class library or DFC, implements the DMCL API and an additional layer of related business logic. It does so through a set of interfaces that client programs can use to access DFC from Java or COM.
Most developers write to DFC since it provides an object-oriented programming interface and offers access to the business logic layer. Included in the business logic layer are support for the data dictionary, data validation, workflow runtime, version policy and more. In addition, as new Content Server functionality becomes available (XML is an example), access to it is provided only through the DFC.
Since the DFC in implemented in Java and is supplied with a COM wrapper, programmers can call the DFC from Java or any COM-compliant language. DFC-based Web applications are typically developed using Java Server Pages or Active Server Pages. A .NET Primary Interop Assembly for DFC is also available. This allows DFC to be called from ASP.NET applications.
· Using DMCL
While it isn't generally recommended, DMCL may be an option on those occasions where developers are accessing base DMCL functionality and require the highest possible level of performance. For instance, if you are executing a series of queries, in some cases DMCL may provide a performance edge. However, since DFC provides "pass through" methods to DMCL (apiGet, apiSet, apiExec) you can program at the DFC layer and drop down to DMCL when appropriate. Note that from DFC 5.3 these methods have been deprecated and developers are encouraged to use DFC instead of DMCL.
Both DFC and DMCL can be accessed from Docbasic and a variety of other languages including Java, Visual Basic and C++, to name just a few.
· Documentum Business Objects Framework (BOF)
The Documentum Business Objects Framework (BOF) provides an object oriented framework for building, testing, and deploying server business logic as Business Objects. In addition, it provides a way for developers to hook their own logic into normal DFC procedures by extending DFC classes.
BOF lives wherever DFC lives, either on the Content Server, application servers, or on any of the other clients depending on you're application's architecture.
BOF is implemented as part of the DFC library and consists of several Java classes and interfaces for constructing and running Documentum Business Objects (DBO) . There are two types of Documentum Business Objects, type-based business objects, and service-based business objects.
A type-based business object can extend a Documentum server persistent object type. For example "dm_document" could be extended by providing new methods and allowing overriding of existing methods, like save(), checkinEx() and checkoutEx().
A service-based business object provides methods that perform more generalized procedures that are not bound to a specific object type or even Docbase.
The specific business logic within the business objects is implemented using the standard DFC framework allowing developers to implement a new DBO without a steep learning curve. Since BOF objects are based on the Documentum Foundation Classes (DFC), developers can maintain a high degree of compatibility with existing DFC applications.
· Documentum JDBC Services
JDBC provides programmatic access to relational data from the Java platform. Using Documentum's eConnector for JDBC, applications written in Java can execute DQL statements, retrieve results and propagate changes back to an underlying Docbase. If you are familiar with the Docbase Server API and the JDBC CallableStatement then you can also execute API commands using the driver. Documentum's eConnector for JDBC can also access content and metadata stored in a WebCache.
Business Objects Framework (BOF)
The Documentum Business Objects Framework (BOF) provides an environment for efficient development of business applications by abstracting content management functionality into the business layer. It provides an object-oriented framework that supports extensibility and reusability of server-side business logic components, leveraging standard J2EE and .NET environments. The interfaces are defined at a high level for easy application development with reusable and extensible business objects providing abstraction layer between applications and Documentum repository (Docbase).
BOF has been designed to provide developers an infrastructure for building content-rich business applications and components such as catalog management, strategic sourcing and contract management. It allows implementers and providers to assemble interoperable applications quickly by using Business Objects (BO) and Service Objects (SO) metaphors. Main benefits of such a framework are: