6.6 Java 2 Enterprise Edition Integration (J2EE)

The J2EE integration for Content Server is available with Content Integration Suite, a separate product.

Content Integration Suite (CIS) enables communication with Content Server and is deployable on a number of J2EE application servers, in addition to working in non-J2EE environments. A supported version of Content Server is required.

This section covers these topics

See the Content Integration Suite documentation set for additional information.

6.6.1 Content Integration Suite Architecture

CIS has a layered architecture that allows for its deployment in a number of different configurations. The architecture, at its core, is based on the standard J2EE Command Design Pattern. The layers on top of the commands provide the APIs that are exposed to the end user.

CIS uses the Universal Content and Process Management API (UCPM API) which uses the SCS API for communication to the Content Server. The SCS API wraps communication from the Content Server into an object model that allows access to the individual object metadata.

The UCPM API enables application developers to focus on presentation issues rather than being concerned with how to access Content Server services (IdcCommand services). The UCPM API comprises a set of command objects that encapsulate distinct actions that are passed to the UCPM API and then mapped to the Content Server. These commands include common functions such as search, checkout, and workflow approval. Each command is tied to one or more service calls. The UCPM API command objects have been developed in accordance with the J2EE Command Design Pattern.

This infrastructure is deployable in any J2EE-compliant application server or stand-alone JVM application. When deployed, the UCPM API will leverage the features in the environment, whether this is a J2EE application server or non-J2EE.

The UCPM API encapsulates Content Server business logic and validates the parameters of the incoming calls. The UCPM API handles communication to the Content Server, encapsulates socket communication logic (opening, validating, and streaming bits through the socket), and provides a strongly typed API to the available services.

6.6.2 Accessing the UCPM API

The Universal Content and Process Management API (UCPM API) offers access to servers by exposing their services and data in a unified object model. The UCPM API is modeled into a set of Services APIs, which are API calls that communicate with the target server, and into ICISObject objects, which are the value objects returned from the server.

The UCPM API is available on the ICISApplication class via the getUCPMAPI() method. The getUCPMAPI() method returns a reference to the IUCPMAPI object, allowing access to all UCPM API objects. Public interface IUCPMAPI is the locator for the getActiveAPI object; getActiveAPI() returns a reference to the SCSActiveAPI object. The SCS API classes communicate with and handle content stored on the Content Server.

6.6.3 UCPM API Methodology

The Universal Content and Process Management API (UCPM API) is stateless; all method calls pass in the necessary state to the method. You can share the reference to the CISApplication class across threads.

  • ISCSContext for the SCS API. The interface ISCSContext is the context object used when communicating with the Content Server.

  • ICISCommonContext for calling some of the CIS APIs. The interface ICISCommonContext identifies which adapters to query and what user information to use.

The first parameter for all methods is an IContext bean. The IContext bean holds context information, such as username and session ID, that is used in the underlying service APIs to identify the user invoking the given command.The UCPM API is a service-oriented API that returns value objects, implemented as ICISObject objects (name changed from the 7.6 API). However, calling methods on the value objects themselves do not modify content on the server; one must call the UCPM API and pass in the value object as a parameter before the changes can be applied.