Oracle® Fusion Middleware Developer's Guide for Oracle Imaging and Process Management 11g Release 1 (11.1.1) E12784-03 |
|
![]() Previous |
![]() Next |
Home > Developer's Guide for Oracl... > Introduction
This chapter includes the following sections:
Oracle I/PM provides the following two integration options: native Java API and Web services.
The Oracle I/PM native Java API offers a comprehensive set of Java classes providing access to all aspects of Oracle I/PM. It is the easiest option from environments that can directly reference Java code. Because it is implemented with client-side Java code, the API provides a number of convenience utilities for common tasks such as populating data structures, searching and sorting collections, and enumerating data types. Moreover, the native Java API acts as a wrapper for Web services. In this way, an integrator can use the Java API and need not worry about the underlying Web services implementation.
Oracle I/PM functionality is available directly as Simple Object Access Protocol (SOAP) based Web services. These services allow access to Oracle I/PM functionality in non-Java environments that support calling Web services. All of the core functionality of the Oracle I/PM API is available in the Web service set.
Because the Oracle I/PM API is exposed as Web services, access to Oracle I/PM functionality is available to any programming environment supporting Web services. Access Oracle I/PM like any Web service by using the Oracle I/PM Web Services Description Language (WSDL) to generate implementation classes for those services.
Application Extension Framework
Oracle provides productized integrations with business applications like Oracle E-Business Suite; these integrations are enabled by the Application Extension Framework (AXF) component of I/PM. The AXF provides a command-driven, web services integration that allows administrators to configure and modify multiple business process solutions separate from the systems themselves. For more details about the AXF and AXF imaging solutions, see Oracle Fusion Middleware Administrator's Guide for Oracle E-Business Suite Adapter for Oracle Enterprise Content Management and Oracle Fusion Middleware Administrator's Guide for Oracle PeopleSoft Adapter for Oracle Enterprise Content Management.
For more details about the AXF and AXF imaging solutions, see the see the ECM adapter documentation for the business application.
The Oracle I/PM API has been implemented based on service-oriented architecture design patterns. The components of the model can be broken down into the following two categories: services and objects.
The services translate into Web service requests. These services do not contain data, but provide methods to accomplish common tasks such as creating a document. The services move data objects back and forth to the Oracle I/PM servers.
Objects contain only data. The only methods they provide are simple get and set operations for the object properties.
See the Oracle Fusion Middleware Oracle Imaging and Process Management Java API Reference for detailed information about Oracle I/PM services, methods, and parameters. Code samples that demonstrate many key API features are provided throughout this guide.
Oracle I/PM services can be divided into the following categories:
Definition: The definition services provide the functionality to manage the structure of the Oracle I/PM system including applications, searches, and inputs.
Document: The document services provide the functionality to manage the content within an Oracle I/PM system.
System: The system services provide the functionality to manage the structure of the Oracle I/PM system including applications, searches, and inputs.
The following common methods are available among these services when applicable:
Methods | Description |
---|---|
list...() |
The list method is used to find definitions with which the current user can interact. The type of interaction, such as view or modify, is defined using the Ability enumeration and is provided as a parameter. |
get...() |
The get method is used to retrieve a definition object. This method includes an array of SectionFlag enumeration values used for requesting specific portions of the object. |
create...()
|
The create, update, and delete methods provide standard maintenance functions for their respective objects within the limits of the current user context. |
The following definition services provide basic creation and maintenance of the structure of the Oracle I/PM system.
An Oracle I/PM application represents a document repository with a uniquely configured set of metadata, privilege assignments, document lifecycle specifications, workflow integrations, auditing configurations, and other items necessary to properly manage documents and transactions. ApplicationService provides the facilities to find, create, modify, and delete applications. The definition of the application resides within an application object that contains multiple subobjects.
Oracle I/PM is designed to provide storage for a large number of documents. Because it can be difficult for users to navigate a large number of documents by browsing folders, the Oracle I/PM system provides a comprehensive searching solution as a more efficient way to find desired content. SearchService is used to find, delete, and execute searches. Because search definitions are complex entities, it is best practice to create a search using the Oracle I/PM user interface and then save it in the system. Saved searches provide an effective mechanism to leverage complex queries through an integration. It only requires that you know the name of the search and the desired search parameter values.
InputService is used to find, create, modify, and delete input definition objects. InputService allows state modifications as well as toggling an input online/offline. It allows users to upload sample data as well as to get definition file information.
ConnectionService is used to find, create, modify, and delete connection definition objects. Connections are used to connect Oracle I/PM to workflow servers and Content Server repositories.
The following document services are used to create and maintain document content in Oracle I/PM.
DocumentService is used to access, lock, move, copy, modify, and delete the documents within the Oracle I/PM repository. All document service method actions are bounded by the current user context and the associated document security configured in the application in which the document resides. DocumentService also maintains the annotations associated with a document and provides the ability to render documents into image formats.
The following system services provide functionality relevant to the management of the Oracle I/PM system.
LifecycleService provides the ability to obtain information about the storage volumes that are available for document storage. The volume objects represent the storage media. Storage volumes are associated with documents in the application definition.
LoginService establishes and terminates user sessions for Oracle I/PM. A session must be established before any of the other services may be used.
PreferenceService provides the ability to store preference information at either the system or the user level. The system level provides a single configuration instance for an Oracle I/PM installation while the user level provides a unique configuration instance for each user. This service provides basic storage and retrieval of those preference settings. Note that if setting preferences from the API, you must be mindful of type. There is no validation against an incorrect setting passed through the API. Validation occurs only when preferences are set through the user interface.
SecurityService provides mechanisms to query the system for users and user groups that exist within the encompassing security environment. It also provides the ability to retrieve and define the security privileges that are beyond those security elements defined within each of the system definition objects.
The system services provide management at the Oracle I/PM API level. Integrators can leverage concepts that span multiple Oracle I/PM API calls.
The NameID class provides the basic means of identifying an entity within the system. All entities have both a unique identifier which is numeric and a name which is represented by string data type. Either the numeric identifier or the name can be used to refer to specific entities within Oracle I/PM. The NameID class will hold the numeric, string, or both identifiers. If both identifiers are provided, the numeric ID is used. Id must be 0 (not provided) for Name to be used. This class is returned by all of the list() functions providing the caller with a list of both the numeric and string identifiers for the objects listed. The get() functions that accept a NameID allow the integrator to use either the numeric ID or the name to retrieve the desired entity.
Each object (application, input, search, connection, and document) is composed of multiple subobjects referred to as sections. Object sections include general properties, security grants, and audit history, among others. For convenience, the get() services accept an array of section indicators so that only a subset of the full object's content can be retrieved from Oracle I/PM or sent back to Oracle I/PM for update. These indicators are defined within the SectionFlag class of each object.
The following table lists the sections available for each definition object.
Section Flag | Application | Input | Search | Connection | Document |
---|---|---|---|---|---|
DESCRIPTION |
X | X | X | X | |
DETAILS |
X | ||||
DOCUMENTPERMISSIONS |
X | ||||
DOCUMENTSECURITY |
X | ||||
EXPRESSIONS |
X | ||||
FIELDDEFINITIONS |
X | ||||
FIELDVALUES |
X | ||||
HISTORY |
X | X | X | X | X |
LIFECYCLEPOLICY |
X | ||||
MAPPINGS |
X | ||||
NAME |
X | X | X | X | |
PARAMETERS |
X | ||||
PERMISSIONS |
X | X | X | X | X |
PROPERTIES |
X | X | X | X | X |
RESULT_COLUMNS |
X | ||||
SECURITY |
X | X | X | X | |
SOURCE_PROPERTIES |
X | ||||
WORKFLOWCONFIG |
X |
Each Oracle I/PM object contains a subobject called the properties object that defines the properties of that object. The properties object may contain additional subobjects that have their own attributes providing additional complex content.
Many of the objects define a permissions subobject that specifies the permissions the current user has been granted in relation to the current instance of the object.
The definition objects define security subobjects that are used to define what users or user groups have been assigned what privileges. These privileges cover the basic object maintenance actions such as creation, modification and deletion, as well as specific actions unique to the type such as search execution.
Many objects include a section for returning the audit history associated with that object. This history includes the actions taken by various users that have affected that object. Audited actions would include creation, modification, or viewing of that object. The audit history records the action that occurred, the user performing it, and the date upon which it occurred.