You are on page 1of 37

What is Filenet P8?

The FileNet P8 family of products includes back-end services, development tools, and
applications that
address enterprise content and process management requirements. This section presents
information
about features and product capabilities. The Architecture section includes an architectural
overview of the FileNet P8 platform components.

What is document?
Most users think of a document as a file they create with an application such as Word. The
user stores the document in the document management system so that a history of changes to the
document is maintained and the document can be easily found and edited. Users who design
enterprise
content management applications and those who manage them will need to understand how
documents
can be leveraged to support a variety of application needs. A document might be used to maintain
a
traditional electronic file as well as other types of data, such as an XML document or content that
is
managed in an external repository. Documents:
Have system properties that the system manages automatically, such as Date Created.
Can have custom properties for storing business-related metadata about the document.
Are secured.
Can have content that can be indexed for searching.
Can point to content that is outside of the object store (external content).
Can have no content (metadata only).
Can be versioned to maintain a history of the content over time.
Can be filed in folders.
Can have a lifecycle.
Can participate in business processes as workflow attachments.
Can generate server events when they are created, modified, or deleted. These events are then
used
to customize behavior.
Can be rendered to different formats, such as PDF and HTML.
Can be published to a Web site.
Can be annotated.
Can be audited.

What is Folder?
A folder is a container that is used to group other objects. Folders are the primary mechanism
through which users access documents. Users typically think of folders as a place where

documents are
stored;, however, filing documents in multiple folders does not create extra copies of those
documents, but
rather creates a logical association between the folder and the document. Folders:
Have system properties that the system manages automatically, such as Date Created.
Can have custom properties for storing business-related metadata.
Are secured.
Are hierarchical, in the sense that a folder can have subfolders.
Can contain documents and custom objects.
Can generate server events when they are created, modified, or deleted. These events are then
used
to customize behavior.
Can be annotated.

What is Annotation?
An annotation object, illustrated at right, represents
incidental information that can be attached to an object for the
purpose of annotating or footnoting that object. You can associate
annotations with custom objects, documents, and folders.
Annotations:
Are independently securable. Default security is provided by
the class and by the annotated object. An annotation can
optionally have a security policy assigned to it.
Can have subclasses.
Can have zero or more associated content elements, and the
content need not have the same format as its annotated
object.
Are uniquely associated with a single document version, and
thus are not versioned when a document version is updated.
Can be modified and deleted independently of the annotated object.
Can be searched for and retrieved with an ad hoc query.
Can subscribe to server-side events that fire when an action (such as creating an annotation)
occurs.
Can participate in a link relationship.
Can be audited.

What is CustomeObject?
A custom object is used to store and manage data that does not have content (and thus
doesnt support versioning) or a lifecycle. For example, a customer might be represented in the
object store
as a custom object because there is no requirement for content. Custom objects:
Have system properties that the system manages automatically, such as Date Created.

Can have custom properties for storing business-related metadata.


Are secured.
Can participate in business processes as workflow attachments.
Can generate server events when they are created, modified, or deleted. These events are then
used
to customize behavior.

What is Properties ?
Content Engine object properties can be used to reference objects that reside in any object stores
within the same FileNet P8 domain.
Properties have a type, which can be Binary, Boolean, String, DateTime, Integer, Float, ID, and
Object.
Object-valued properties are useful for defining relationships between objects. The Customer
property
shown in the loan example in the previous section illustrates how both the Loan and the Loan
Application can point to the same Customer object. The properties that are associated with
objects can have a single value or multiple values. For example, you might define a multi-valued
property named Telephone Numbers in which multiple telephone numbers, such as home and
cell phone numbers, are stored. You can then search for objects by creating a search expression
that searches for more than one value for the same property.
Properties can also be configured to have default values that are set when a new object is created.
In
addition, the system can be configured to restrict the values for the property to a choice list. A
choice list is a list of possible values that the user can select from when assigning a value to the
property.

What is Event and Subscription?


Events provide a mechanism for initiating actions that are invoked when objects are created and
modified in, and deleted from, an object store. For example, creating a document in an object
store triggers a create event, which launches a workflow that approves the new document and
posts the approved content to a Web site.
A subscription is the association of a particular event trigger with an event action. In the previous
example, create is the event trigger and the event action is the workflow launch. Many different
subscriptions might be associated with a particular event trigger. The following diagram
illustrates how several events might be triggered when a new loan application document is
created in an object store.

what is Life Cycles?

Administrators can use document lifecycles to define a sequential set of states that a document
will go through over its lifetime, as well as the actions that are triggered when it transitions from
one state to another. A user or application can promote or demote an object to move it
forward and backward in its lifecycle.
Life Cycle Actions are promote or Demote. And life cycle states are 1. Draft 2. Review 3.
Publish and 4. Close

What is Search?
Content Engine supports property and content-based searching. Key capabilities of search
include the
following:
A single search can span multiple object stores in different databases.
Workplace users can search for documents, folders, and custom objects. Searches can be
designed to
specify multiple folders, including a common folder name used in multiple object stores.
Content-based searching using IBM FileNet P8 Content Search Engine supports extensive
content
search capabilities that account for misspelled words, typographical errors, phonetic searching,
word
stem searching, synonym expansion, and wildcard searching.
Content searches return matches on properties and content.
Search results can optionally be displayed in a document summary format, which includes a
brief text summary extracted from result documents.
Search results can be ranked by relevancy.
Searching makes use of the Autonomy multilingual features.
Bulk operations can be performed on search results in Enterprise Manager, where the
operations can
be scripted, or selected from a set of predefined operations such as delete, cancel checkout, file,
unfile, and change security.
Searches can be created and stored for easy execution of common queries.
Search templates provide a simple user interface for entering search criteria.
Shortcuts to searches can be saved so it is easy to find them later.
Searches can be expanded to retrieve documents, folders, and custom objects in the same
search
specification.

What is Versioning?
You can create different versions of content to maintain a history of changes and to control which
users can change the content at a given time. The set of versions for a single document is called a
version series.
Content Engine supports a two-level versioning scheme, in which a document version is either a

major or minor version. Minor versions typically denote an in-progress document, whereas a
major version typically denotes a completed document. In addition to version numbers, the
system maintains a state property indicating the current state of each version of the document, as
follows:
In Process A work in progress version. Only one version of a version series can be in this
state.
Reservation A document currently checked out for modification. Only the latest version of a
version series can be in this state.
Released A document released as a major version. Only one major version of a version series
can
be in this state.
Superseded A version superseded by another version. Many versions in the version series can
be
superseded.

What is FEM (FileNet Enterprise Manager)?


Enterprise Manager is a Microsoft Management Console (MMC) based tool that administrators
use to
manage Content Engine. Enterprise Manager provides a graphical, wizard-based user interface to
perform
the following tasks:
Create and manage object stores and file stores
Create and manage classes and properties
Create and manage security policies and default security for object authorization
Create and manage lifecycle policies
Create and manage event subscriptions
Import and export objects and metadata definitions as XML
Search and perform bulk updates on search results
Configure XML classification
Perform document management tasks (for example, checkin and checkout)
Configure trace logging

P8 Core Components
FileNet P8 core components: 1. Content Engine (CE) 2. Application Engine (AE) and 3. Process
Engine (PE)
Content Engine
Content Engine is designed to handle the heavy demands of a large enterprise. It is capable of
managing enterprise-wide workflow objects, custom objects, and documents by offering
powerful and easy-to-use administration tools. Using these tools, an administrator can create and
manage the classes, properties, storage, and metadata that form the foundation of an Enterprise
Content Management system.

Key architectural aspects include: Object-oriented, extensible metadata model Enables


Content Engine to provide complex and
flexible data representation; and a rich event framework provides the means to trigger an action
in
response to activities performed against Content Engine objects.
Application Programming Interfaces (APIs) Provide an extensible platform for
development
and cross-repository queries, and lets administrators configure systems programmatically. A Java
API provides a rich set of Java classes which map to object store objects, such as Document,
Folder, or Property Description; a Web Service API allows customers to author applications in a
platform and language independent manner by exposing the object model in a small number of
generic methods suitable for deployment in a Web environment; a .NET API (which is
functionally
equivalent to the Java API) provides for development of applications using the .NET platform.
J2EE-compliant application server Offers reliability, scalability, and high availability
features, as well as support for a wide range of operating system platforms, application servers,
and
database technologies.
Scalable Can be deployed to suit the demands of the enterprise. As the enterprise's needs
change, you can reconfigure the system by replacing, adding, or removing servers or applications
without bringing the system down. You can add members to Web server farms and Content
Engine
server farms at any time.
Unicode-based Unicode is a universal character encoding standard that enables Content
Engine
to be targeted to multiple platforms, languages, and countries without re-engineering, and it
allows
data to be transported through many different systems without corruption.
Process EngineProcess Engine provides software services for managing all aspects of business
processes (also called workflows), such as process execution, process routing, rules
management, process simulation and modeling, and workflow analysis. Process Engine
components allow you to create, modify, and manage workflows implemented by applications,
enterprise users, or external users (such as partners and customers).
The preceding diagram includes the following services and management components:
Process Service The core of the business process management system. It provides workflow
services on behalf of Process Engine.
E-mail Notification Enables automatic transmission of e-mail to users when specified
processrelated events occur; e-mail notification can also be used to track workflows.
Rules Connectivity Framework Provides a framework for rules integration. A process
designer or
business analyst creates business rules using rules software acquired from another vendor and
associates the rules with the steps of a workflow. When a running workflow encounters a rule,
Process

Engine sends a request to the Rules Listener to execute a rule set. Rules Listener executes the
rules
in the rule set and returns the results to Process Engine. The rules engine provider must
implement a
specific API in order to integrate with Process Engine.
Process Task Manager Provides administrative tools for configuring and managing processrelated
services on the Process Engine server.
Process Analyzer Provides analysis capabilities to determine cycle times, find bottlenecks,
and
generate reports and charts to analyze the processes deployed in the Process Engine system.
Process Simulator Allows you to simulate processes or perform what-if scenarios with
hypothetical or historical data.
Workflow database Contains Process Engine configuration information as well as running
instances of workflows.
Component Integrator Provides an extensible integration framework that allows you to easily
create connectors. Java and JMS adaptors are ready for you to use without modification.
Process Web Services Provides a Web services API to Process Engine.
Workflow auto-launch Event-driven component that launches workflows in the Process
Engine
system. You can configure this component to launch a specific workflow in response to specific
events. For example, filing a document in a folder might launch a review process in the Process
Engine system.
Directory Services Directory service functionality is accessed through the Content Engine
server.
Content Engine supports several LDAP providers and single-sign-on (SSO) functionality. This
passthrough approach simplifies directory services configuration by centralizing it for both
Content Engine and Process Engine.
Application EngineApplication Engine is the FileNet P8 component that hosts the Workplace
Web application, Workplace java applets, and application development tools. It is the
presentation layer for both process and content. Application Engine protects user credentials
passed between Workplace and Content Engine and, if configured, provides SSL security.
The services and applications included in Application Engine are:
Workplace An end-user Web application that provides access to the document management
capabilities and is tightly integrated with the business process management capabilities of
FileNet P8.Workplace also supports extended FileNet P8 capabilities such as forms management,
records
management, and portals.
Workplace XTWorkplace XT is an optional FileNet P8 component (similar to Application
Engine) that hosts the Workplace XT Web application, providing access to the process and
content functionality of FileNet P8. You can install Workplace XT in addition to or in place of
Application Engine. Workplace XT protects user credentials passed between Workplace XT and
Content Engine and, if configured, provides SSL security.

Rendition Engine
Rendition Engine converts documents from a variety of formats, such as those produced by
Office programs (Word, Excel, PowerPoint) to PDF and HTML formats. Multiple Rendition
Engines can be configured to support large numbers of conversion requests.
An application requests that a document be published by submitting a publish request through
one of the FileNet P8 APIs. A publish request might simply create a copy of the document in a
new folder, with new security attributes, or it might also transform the document content to
another format (HTML or PDF). The publish request is queued in the Content Engine server. The
publishing background task dequeues the publish request and calls the appropriate publishing
event handler. If a format conversion is a part of the publish request, then the handler sends the
document to the Rendition Engine server to perform the necessary transformation.
P8 Installation involves these steps:
1. Install & configure CE::
a) Install Content Engine
b) Install FileNet Enterprise Manager
c) Install Content Engine software updates
d) Install ECM Centera SDK library files
e) Configure Content Engine instances
i) Delete existing data sources as needed
ii) Grant permissions to the Configuration Manager user
iii) Configure instances using the graphical user interface
iV) Configure instances using the command line interface
f) Install the latest Content Search Engine Client files on Content Engine servers
g) Install the latest Process Engine Client files on Content Engine servers
h) Deploy Content Engine instances
i) Install Tivoli Storage Manager client and add native API library paths (WebSphere)
j) Install Tivoli Storage Manager client and add native API library paths (WebLogic)
k) Install Tivoli Storage Manager client and add native API library paths (JBoss)
l) Complete Content Engine post-deployment steps
m) Establish the FileNet P8 domain and Global Configuration Data (GCD)
n) Create the data sources for an object store
o) Create the initial object store
p) Verify the Content Engine installation
2. Install and configure Content Search Engine::
a) Install Content Search Engine
b) Configure Content Search Engine
c) Create a Content Search Engine collections directory
d) Configure Content Engine for content-based retrieval
e) Verify the Content Search Engine installation
3) Install and configure Process Engine::

a) Install Process Engine


b) Install Process Engine software updates
c) Install the latest Content Engine Client files on Process Engine servers
d) Configure Process Task Manager
e) Complete post-installation Process Engine configuration
4) Install and configure Application Engine::
a) Install Application Engine
b) Install Application Engine Software Updates
c) Install Content Engine Client file updates
d) Install Process Engine Client file updates
e) Configure Application Engine
f) Deploy Application Engine (choice of ur server)
5) Configuration and startup tasks::
a) Set Application Engine bootstrap preferences
b) Create a Process Engine isolated region
c) Create a Process Engine Connection Point
d) Configure the Process Engine connection point for Application Engine
e) Set up Content Engine and client transport SSL security
f) Set up Application Engine SSL security
g) Perform additional configuration tasks .

Create Object Store in FileNet using FEM


1) Must : Create GCD database in separate table space (GLOBAL database)
2) Try to get separate table space for object store DB.
3) Steps : Create the oracle user, configure the XA and Non-XA data source for that user under
WAS , and test the connection
4) Then move on to FEM and create object store by supplying correct data source name. This is
applicable to GCD too.
5) If the Object store creation wizard fails, make sure you request DBA to drop /clean that table
space and then try.
6) make sure you create a folder called jars on CE server and drop the correct version jdbc driver
file and update the WAS env.

FileNet Interview Questions


Interview Questions depends on ur profile, the area on which u have worked on.....There
are few basic qustions, which I got in last 3 Yrs of Interviews :-)
1. What is ECM?
2. What is FIleNet and it's components (AE, CE, PE)
3. How AE n CE or CE n PE communicate with each others?
4. Which protocol got used while communication?
5. Whih version of FileNt u have used?
6. Diff b/w 3.5 and 4.0?
7. Diff b/w Custom Object, n FOlder and Document?
8. Descibe Work Item, Workflow definitions, Queue, Roster and WorkFlow?
9. Document Versioning means? Superseedd means..?
10. Other than this, they can ask for CE/PE APIs?
11. If you have worked on Process Designer, then How to create workFlows, How to route them,
where to put security, where to add attachment etc..........
Fell free to ask/post more if you have any....

What is BPF?
FileNet BPF provides a configurable framework for rapid development of BPM application.
BPF Web Application, an Ajax based application provides a user friendly interface to the
business users.
Along with the pre defined screens and functionality, FileNet BPF provides a framework to
develop and customize the application to meet business requirement.
FileNet BPF has two components:
1. BPF Web Application: Deployed on a J2EE server, the BPF Web Application is an out-of-thebox, customizable, and configurable portal for BPM applications, and a UI container with
relevant components for BPF applications.
2. BPF Explorer: BPF Explorer is a Microsoft Management Console (MMC)-based tool for
defining and configuring BPF applications.

Difference between Workplace and Workplace XT?


Workplace XT comes with FileNet P8 4.0 onwards by default while workplace comes with FNet
3.5
Workplace XT is faster, user friendly and has features like drag and drop to add documents.

IBM launched Workplace XT to compete with documentum and Alfresco, who has similar web
interfaces.
While most of the functionalities of Workplace XT are similar to the Workplace, it cannot be
considered as product upgrade as Workplace XT is built using Java Server Faces (JSF)
technology.
Workplace XT has better folder structure and nicer way to organize favorites.
Workplace XT does not provide a development environment for customization; however,
Workplace continues to provide the Workplace Application Toolkit and related development
tools for Workplace customization.

Some imp info abt Content Java API


* Annottaion can be added to Documents, Custom Objects and Folder
Return the value of head property
referentialContainmentRelationship.get_Head();
Retreive the annotation of a particular document
objectStore.getObject("Annotations",documentPath);
Promote document from "In Progress" to "Completed"
document.changeState(LifeCycleChangeFlags.PROMOTE);
Retreive Child Documents from a Compound Documents
document.get_ChildDocuments();
* To implement Java Event Handler, first implement the EventActionHandler interface and
onEvent(...)
* To determine ACE (Access Control Entry), on a folder has allow/deny access:::
accessPermission.get_AccessType()
* Auditing for CE Objects can be done using by either CE Java APIs or FEM (FileNet
Enterprise Manager)
* Publishing mechanism create a new document object. Any changes made to original
document, after initial publication will not be reflected in published document.
* Document.getContentElements() to retreive content elements associated with document.
Retreive choice List associated with a document Class
propertyDescription.get_ChoiceList();
Create an instance of custom object
Factory.CustomObject.createInstance(objectStore,"CustomObjclass");
* Factory class provide type-specific static inner classes for creating instances of CE classes.
Retreive the audi history for deleted objects in CE
Call searchScope.fetchObjects(...). The SearchSQL object that is passed in must have an SQL
statement to query the DeletionEvents.
* folder.getContainees() retreives the collection of Document and CustomObject objects
filed in a folder.
* SearchScope object determines which ned to be searched

Difference between FileNet 3.5 and 4.5


a) FileNet 3.5 is a COM based application. FileNet 4.5 is java based application.
b) The Routers in FileNet 3.5 is replaced by Connection points in FileNet 4.5. Therefore, the
routers are no longer started and stopped as a service.
c) The Process Engine 4.5 does not have direct communication with the LDAP unlike 3.5
environment.
d) All the LDAP communication is via the Content Engine in FileNet 4.5.
e) FileNet 4.5 global configuration is stored on a Database unlike the FileNet 3.5 where it is
stored on a encrypted file sysinit.dat
f) FileNet 3.5 relied heavily on passing username and passwords for authentication to both the
CE and PE. Due to the architectural changes to the CE 4.5, a much greater set of authentication
options are now available. The two authentication standards that are now supported include the
Java Authentication and Authorization Service (JAAS) and its Web Services counterpart (WSSecurity).
Few Imp things before creating workflow
Precaution while creating workflow
1. Try to use submap in workflow as much as possible....
2. Step name should be same as steps defined in requirement document.
3. If a component step is used at multiple locations in workflow then separate queue should be
defined for processing of work items from that queue.This is to optimize processing time for
work items.
4. try to put general description on each step to make workflow more descriptive.
5. Try to more business logic should be handled in workflow definition instead of code.
6. Try to use more out of the box functionality, if feasible.
7. Always check sequence of routing condition like first true condition then next

Important Filenet Tools


There are different tools are available in the FileNet to perform different activities.
Below I have listed some of the important tools availablein the FileNet.
1. FileNet Enterprise Manager
2. Process Designer
3. Process Task Manager
4. Process Administrator

5. Process Configuration Console


6. Process Tracker
FileNet Enterprise Manager is the configuration and administration tool for
Content Engine. FileNet Enterprise Manager is a Microsoft Windows application built
using the .NET API and communicates with the Content Engine using the Web services
interface.
FileNet Enterprise Manager supports the following actions:
Configuring all aspects of the domain and underlying object stores.
Defining custom metadata, such as classes, properties, templates, subscriptions,
and event actions.

Assigning many aspects of security access rights.

Searching for and administering instances of documents, folders, and custom


objects.

Exporting and Importing the metadata from one environment to another


environment.

The Process Designer is a graphical tool provides the general process design
capabilities where users define or update their process flows. A workflow definition
describes all
The Process Administrator tool lets an administrative user query the system for
process instances and view the current state of those instances. Process Administrator
provides a wide variety of options so we can search very precisely. Process
Administrator supports following actions on the work in progress workflow items
Complete a step and send it on to the next step.
Modify workflow field values.

Assign users to or remove users from a workflow group.

Delete an entire workflow or one or more work items.

The Process Tracker tool can be launched to view the current and historical state of
an individual process instance. Process Tracker provides the status of a workflow that is
currently running in a graphical view. From the Process Tracker graphic view window,
we can tell what steps have been completed in the workflow, when they were completed,
and which steps are currently active.
The Process Configuration Console tool defines the rosters, queues, event logs,
and various other system-related components. This is used to register the components.
From the tool, you import service definitions for the component. You must create a
component queue for each imported class and make the component queue operations
available to use during a workflow design.

The Process Task Manager tool that is deployed with the Application Engine that
can be used to start and stop the various server components, including the server itself.
This is used to start, stop, and administer Component Managers. The component must
be registered with a omponent Manager. Each Component Manager coordinates one or
more components which are responsible for delivering events from the Process Engine
to an external entity such as a Web service or a messaging system.This can be verified
under the Required Libraries tab for the Component Manager.

FileNet P8 Architecture
Hi All, Today we are going to discuss about the FileNet P8 Architecture. FileNet platform
contains 3 servers we can call them as engines.
1. Application Engine
2. Content Engine
3. Process Engine
Apart from that there are different tools available like Capture, Records Manager and workplace
to perform different activities. The FileNet platform can be integrated with different repositories
like Image Services, Content services and other third party repositories using the Content
Federation Services.

FileNet Application Engine Architecture


Today I will discuss about the Application Engine architecture in the FileNet. The Application
Engine represents the out-of-the-box user interface for the FileNet P8 platform. Workplace is the
user interface for the FileNet P8 and it provides the folder based view of an FileNet P8 content
repository along with various components like inbox, public queue and step processors. Based on
the roles users can access the admin tools like Process Administrator, Process Confiugration
Console and developer tools like Process Designer.

Major components of the Application Engine is application server, Java API and Component
Integrator. Currently FileNet P8 is supporting the below application servers.
1. Websphere
2. Weblogic
3. JBoss
Java API is used to communicate with Content Engine and Process Engine. Workplace can be
customized by using the WAT(Web Application Toolkit).
Component Integrator is used to integrate the custom components to the Process Engine. The
component can be a jar file, web service or JMS. Component Manager is process engine
component but hosted and managed on the application engine. By default IBM is providing the
custom component for CE Operations for performing the basic Content Engine operations like
copy, delete and moving documents etc.The Application Engine also supports the integration
with Microsoft's Office and WebDAV.

Filenet Process Engine Architecture


Today we will discuss about the FileNet Process Engine architecture. Process Engine is
used to manage the workflows among people and systems for content and processes. It
supports supports process standards, such as Business Process Modeling Notation
(BPMN) for modeling and the XML Process Definition Language (XPDL) for definition
and executionProcess Designer tool is used to design and develop the workflow. There
are tools available to analyze and simulate the workflow. We can integrate the third
party rules engine with the workflow to associate with the steps.

Process Service is core of the business process management system. It provides


workflow services on behalf of the Process Engine.
Process Task Manager is an admin tool to configure and manage process-related
services on the Process Engine server.
Email Notification Enables automatic transmission of e-mail to users when specified
process-related events occur. E-mail notification can also be used to track workflows.
There are three different APIs are available to develop the process engine applications.
1. Java API
2. PEWS (Process Engine Web Services)
3. Process Engine REST Services API
Process Engine Java API: IBM FileNet Business Process Manager contains a full
featured Java API set that allows for various interactions with the PE server. This API
set may be familiar to a lot of IBM FileNet experienced programmers from the eProcess
versions through IBM FileNet P8 4.x. This API set provides access to define, administer,
and control runtime workflow processing. It can also be used to build custom Step
Processors and Work Performers.The PE Java API uses the CE Java API for
authentication. Authentication-related calls can be done with EJB or WSI transports,
though the use of the Web services transport is the normal configuration.
Process Engine Web Services: Process Engine Web Services (PEWS) provides a
WSDL-based interface to communicate with PE. PEWS is a functional subset of the PE
Java API. Because there is no native PE .NET API, PEWS is ideal for development
with .NET. Similar to the CEWS, PEWS is also compliant with Web Services
Interoperability Organization (WS-I) Basic Profile 1.0 and WS-Security.
Process Engine REST services:
A new feature introduced in IBM FileNet P8 4.5 is the PE REST Service. The PE REST
Service provides access to the PE by following the Representational State Transfer
(REST) architecture style. PE objects are exposed as REST resources which are
accessible by standard HTTP methods. This API is ideal for Ajax-based Web
applications that need to talk to PE.

FileNet Content Engine Architecture

Hi, Today I am going to explain the architecture of the FileNet Content Engine. Content
Engine serves as
1. Main content management
2. Security management
3. Storage management engine for the family of IBM FileNet P8 products.
We can install and implement IBM FileNet Content Manager as a stand-alone product.
The Content Engine is written in Java as a J2EE application. Developers can use the
Java API , Net API or Web services to develop the applications based on the Content
Engine. In the FileNet P8 v3.x we can use the COM API to develop applications using
Content Engine. COM API is useful for developers who came from VB background. This
COM APIs et is now supported as a compatibility layer in P8 4.x, allowing many COMbased custom applications that are written in P8 3.x to continue functioning in P8 4.x
with a few configuration changes.
In the Content Engine, document is a mix of content as well as the metada (you may call
it as document properties). You are also classified this as sturctured (metadata) and
unstructured (content) data. In the Content Engine all the structered data will be save to
the RDBMS and the structured data will be saved to a filestore. A file store can be a
shared drive, database or tape drive. The file store can be configured using Filenet
Enterprise Manager (FEM).
The content engine uses the directory services to authenticate the users. All the users
and roles are defined in the directory services. Based on these roles and users content
engine authorize the users to a particular document or object. Security privileges can be
defined at a class level or at object level based on the requirement.

Any Web service call first route to the Web services listener and later it will route to the EJB

Listener which is stateless, which demarcates the transaction and authentication boundaries into
the server.
What is FileNet Technology?
Answer:
FileNet is an Enterprise Content Management (ECM) solution product suite from IBM.
Enterprises uses FileNet to manage their content and business processes.
FileNet P8 platform, the latest version of FileNet system, provides a framework for developing
custom enterprise systems, offering much functionality out of the box and capable of being
customized to manage a specific business process.
FileNet Enterprise Content Management (ECM) product suite includes:
Content Management Products:
1. FileNet Content Manager (CE) CE is the core content management solution for the

FileNet P8 platform.
2. FileNet Image Services (IS) IS is used to store and manage documents.

Business Process Management Products:


1. FileNet BPM - BPM manages workflows to reduce cycle times and to improve

productivity by streamlining and improving complex processes. BPM component


includes Process Engine, Process Analyzer and Process Simulator.
Example:
An insurance company receives address change requests from it policy holders though a signed
form mailed to one central location. The requirement is to digitalize the request came though
paper form, process it quickly, send the response to customer and keep the digital images (for say
7 years) for regulatory reasons.
FileNet technology provides a platform and out of box products which help automating this kind
of processes quickly. After manual prepping of mails received in mailroom, 'FileNet Capture'
allows scanning paper documents. Once scanned, digital images (documents) can be stored in
'FileNet Content Engine (CE)' and a workflow is launched in 'FileNet Process Engine (PE)'.
The work of address change is now assigned to an employee located in different part of the
world. The employee gets the work request in 'FileNet Business Process Framework (BPF)'
web application's user in-basket. The employee checks the request assign to him and performs
the address change activity on the customer policy. After performing the address change work,
communication is sent back to customer and digital documents are moved to 'FileNet Record
Manager' for archival.

What is document lifecycle?


Answer:
Document lifecycle in FileNet P8 is a sequence of states (like Draft, Review, Publish, close etc)
that a document will go though over its lifetime, as well as the action that are triggered when
document move from one state to another.
A user or application can move the doc forward or backward in it's lifecycle.
Does FileNet component CE, PE, AE support server clustering? What kind of clustering is
supported by FileNet P8?
Answer:
FileNet P8 platform supports Asymmetric, Symmetric, N + 1, and N to M clusters. This includes
FileNet Content Engine, Process Engine and Application Engine.
Asymmetric clusters include both active and passive servers. i.e. In case of Asymmetric 1-to-1
cluster, there is one active and another passive server. This is simplest form of clustering.
Symmetric clusters include all the active servers. In Symmetric clusters different servers run
different services but in case of fail over, multiple services are be moved on to one server.
Please note: While FileNet CE, PE, AE supports active/active clustering, FileNet IS supports
only active/passive clustering.
Which protocol is used by FileNet P8 Process Engine (PE) to connect to Content Engine
(CE) or Application Engine (AE)?
Answer:
IIOP is used by PE to communicate with CE and AE.
IIOP means 'Internet Inter-ORB Protocol'
ORB means 'Object Request Broker'
As CE is installed on AE, it uses direct API calls to communicate with AE.
In how many databases does FileNet Content Engine (CE) stores data?
Answer:
FileNet Content Engine (CE) has two or more databases:
1. Global Configuration Database (GCD) database (FNGCDDB)

2. Object Store databases (one or more)


A FileNet P8 domain can contain one or many object stores. Each object store has its own
database which could be existing database or can be created by object store creation wizard in
FEM.
Where FileNet Content Engine (CE) physically stores documents?
Answer:
FileNet Content Engine can be configured to store documents at following places:
1. In Database as blobs (IBM recommended maximum document size to store as blob is 10
KB)
2. In File Store
3. In Fixed Storage Devices (like EMC Centera)
What is FN P8 domain?
Answer:
The FileNet P8 domain represents a logical grouping of physical resources (such as object stores)
as well as the Content Engine servers that provide access to those resources. A server can access
any resource in the domain, but cannot access any resource that lies outside of the domain.
The CE Global Configuration Data (GCD) database stores information about the resources and
services for the FileNet P8 Domain.
The FileNet P8 domain contains the following entities:
1. Site - A site is a geographical location where resources are connected

through a local area network.


2. Object store - An object store is a repository for storing objects (such as
documents, folders, and business objects) and the metadata that defines the
classes and properties of objects.
3. Index area: An index area is a container for one or more indexes, which

are used to perform full-text searches against documents in an object store.


4. Fixed content device: A fixed content device is an external storage device.

This device can be associated with a FileNet P8 fixed storage area.


5. Content cache area: A content cache is a disk area that contains copies of

content recently accessed through a Content Engine server. Typically used


in a geographically distributed environment, it enhances response time
when retrieving content.

6. Add-on feature: An add-on feature is a module that contains custom

metadata and data that support extensions to core Content Engine features.
7. Marking set: A marking set provides a way to define a level of security on

objects in addition to the normal FileNet P8 security model. By using


markings, access to objects can be controlled based on specific property
values. To know more about 'Marking Set' visit article FileNet P8 Marking
Sets.

What is File Store and File Store Policy?


Answer:
File Store is the physical folder where FileNet stores documents. Multiple File Stores can be
created to store documents at two different places. This type of setup is called File Store Farm.
File Store Policy allows distribution of documents in File Store Farm
What is the use of Content Engine Query Builder?
Answer:
CE Query Builder allows FileNet users to find Content Engine objects and to carry out bulk
operation on them. Query Builder is part of FileNet Enterprise Manager (FEM) software comes
with FileNet Content Engine installable.
The basic functionality of Query Builder includes:
1. Find objects using property values as search criteria.
2. Create, save and run simple searches.
3. Create and save search templates that will prompt for criteria when launched.
4. Launch search templates that are provided with each Content Engine and Enterprise
Manager installation.
5. Create, save, and run SQL queries.
The Query Builder searches can be combined with bulk operations that include the following
actions, available on the Query Builder's Actions tab:
1. Delete objects.
2. Add objects to export manifest.
3. Undo documents checkout.

4. Lifecycle actions (set exception, clear exception, promote, demote, reset).


5. File documents and custom objects in folder and unfile them from folder.
6. Run VBScripts or JScripts.
7. Edit security by adding or removing users and groups along with allow and deny
permissions.
What is the significance of Folders in FileNet P8?
Answer:
In FileNet, Folders are used to group other objects including documents and custom objects. As
folders in windows, FileNet folders provide a way to browse through FileNet objects. Folder's
helps in organizing the documents and other items.
A document can be filed to multiple folders. FileNet does create copies of document in this case.
It actually creates a logical association between then folder and the document.
Few important facts about folders:

Folders are not versionable; only documents are.


Folders are based on CE folder class.

Content of a folders can be copied to another folder exist in same object store.

It is not mandatory that each document or objects should be filed under a folder.
Documents which are not part of any folder remain Unfile.

A Root Folder is created along with a new Object Store. This folder is parent folder for
all other folders in the Object Store.

Each Folder has its own custom security.

Folders can generate server events when they are created, modified, or deleted.

How to determine if FileNet Content Engine (CE) is running fine?


Answer:
Following are few things one can check to find out if FileNet CE is running fine:

Check WebSphere console for 'FileNetEngine' web application status. It should be in


running state.
Try connecting to CE using FEM. If connection is fine CE is running. If CE is not
running user will get message 'Unable to logon to P8 domain'.

Try logon to FileNet Workplace. If user is able to sign in, CE & directory services are
running fine. If not user will get 'credential exception'.

Try following URL:


http://machine_name:port_number/FileNet/Engine
ie. http://hqdemo1:9080/FileNet/Engine
If 'Startup Context' page is displayed, CE is running fine. If CE is not running, user will
get message 'The page cannot be found'.

How authentication is handled in FileNet P8?


Answer:
Authentication is a process of checking if the user entered credentials are correct. FileNet P8
uses two different standards for authentication:
1. Java Authentication and Authorization Service (JAAS) standard
JAAS provides a policy-based framework to determine who is invoking a Java application. The
Content Engine EJB resides within the J2EE Application Server's EJB container. CE therefore
uses JAAS pluggable framework for authentication.
2. Web Services Security (WS-Security) standard
FileNet web services uses WS-Security standards for authentication. Like JAAS, WS-Security is
an extensible standard which supports multiple security token formats i.e. Username Token,
Kerberos Tokens, SSL X.509 Tokens etc.
When the Content Engine server receives a web service request, the Content Engine Web Service
Listener extracts the WS-Security header and performs a JAAS login based on its contents. If
this JAAS login is successful, then the Web service listener passes the request onto the Content
Engine EJB layer within the EJB container.
How do you delete a document using code?
Answer:
A document object can be deleted from FileNet Content Engine (CE) using .delete() method.
Following steps can be followed to delete a document:
1. Instantiate the object using getInstance or fetchInstance.
2. Call 'delete' method to add delete operation to the objects PendingActions.
3. Call 'save' to perform the delete operation.

Following Java code demonstrates the deletion of a document stored in FileNet Content Engine:
// Get the object
Document doc = Factory.Document.getInstance(os,"Document","/Doc");
// Mark the document for deletion locally
doc.delete();
// Perform the delete
doc.save(Refresh.NO_REFRESH);
Note: Similar steps can be used to delete other objects in FileNet including folder objects,
custom objects etc.
What are root classes in FileNet?
A root class is a class without a parent. FileNet object store has multiple root classes including
Document Class, Annotation, Choice List, Event etc. The Parent Class property of these root
classes is None (as shown in below screen shot).
The root classes are created automatically during object store creation. Once the root class is
created, subclasses and properties can be added to the object store.
For example, a document subclass can be added under root class (Document Class) by running
the Create a Class wizard from Enterprise Manager.
Except the Document Class, all other root classes are places under Other Classes in enterprise

Manager as shown in below screen shot:

In how many databases does FileNet Process Engine (PE) stores data?
Answer:
FileNet Process Engine (PE) stores data in to one database named VWDB
What is 'Workflow Roster'?
Answer:

'Workflow Roster' is a database structure that stores information about all workflows (or
workitems) in an isolated region. Workflow Roster is part of Process Engine VW database.
Workflow rosters provide the Process Engine with an efficient way to locate specific workflows.
When we initialize a new isolated reason in process engine, a roster called DefaultRoster is
created for that isolated reason. Additional rosters can be created using Process Configuration
Console (PCC) to easy administrative tasks.
What is an Isolated Region?
Answer:
An isolated region is a logical subdivision of the workflow database that contains the queues for
the work items, event logs, rosters, and other configuration information.
Below are few facts about isolated region:

FileNet Process Engine have Isolated Regions


Process Configuration Console (PCC) is used to create and manage Isolated Regions.

One PE can have multiple Isolated Regions.

Multiple Isolated Regions cannot connect to same Content Engine (CE).

Initializing new Isolated Region creates default structure as Inbox, default roster and
event log.

A system administrator uses FileNet Enterprise Manager (FEM) to define the isolated
region. A Process Engine host, the communication point, a password, and isolated region
number are required to define isolated region in CE.

Why do we need multiple Isolated Regions?


Answer:
An isolated region is a logical subdivision of the workflow database in FileNet Process Engine.

Different units in an organization who do not want to share workflow data can create
different isolated region.
For example the research department and the finance department in an organization have
two all together logically different processes. It is recommended to have two different
isolated regions for these two departments.
Multiple isolated regions also make it easy to maintain the systems. Changes made into
one region dont affect the users of another region.

How to determine if FileNet Process Engine (PE) is running fine?


Answer:
Following things can be checked to find out if FileNet PE is running fine:

Try following URL:


http://hqdemo1:32776/IOR/ping
If PE is running, the PE server page is displayed.
If PE is not running, an error 'Page not found' is displayed.

IOR Port (Interoperable Object Reference Port): IOR port is used by AE to


communicate with PE. This is a unidirectional port from AE to PE. It has 32776 and
32777 as the default port numbers.
Try opening the FileNet Workplace - 'Tasks' page.
If tasks page opens, PE is running fine.
If request to 'Tasks' page get timed out and 'Process Engine Exception' occurred then PE
is not running.

Examine following Windows services for the process Engine and make sure they are
running.
1. Process Engine IMG ControlService
2. Process Engine Service Manager

What are different types of Queue's in Process Engine?


Answer:
Process Engine (PE) queues holds the work items waiting to be processed. The queues in PE can
be managed using Process Configuration Console (PCC).
PE has 4 different types of queues:
1. User Queues
User queues hold work items assigned to a users or being tracked by a user. There are two
different type of user queues created when an Isolated Region is initialized:
o Inbox
o

Tracker

2. Work Queues
Work queue hold work item which can be processed by one or many users part of a
group.
i.e. For processing an insurance claim, a work queue 'Claim' can be created and any
employee from claim processing department can pick up the work item and process it.
3. Component Queues
Component queue holds work items to be processed by component step in workflow. The
components steps are to process a work item using an external component.
4. System Queues
Internally used by Process Engine, System queues are not accessible to the users or
administrators. Conductor, Delay, and InstructionSheetInterpreter are few of the examples
of system queues.
How to delete a queue in Process Engine?
Answer:
FileNet doesn't provide any mechanism to delete a queue; whether it is a work queue or a
component queue.
The only workaround is to initialize the isolated region in following way:
1. Export isolated region configuration data to XML - Use Process Configuration Console
(PCC) to export all components of selected isolated region.
2. Initialize a isolated region.
3. Take a backup of XML file from the export in step 1 and carefully edit the XML file to
remove the nodes of unwanted queue.
4. Import the XML file in recently initialized isolated region with the option 'overwrite'.
5. Validate the configuration.
Note: When an isolated region is initialized, it makes changes to the workflow database structure
and the data in workflow database is deleted.
FileNet developer should design and configure the queues very carefully to avoid a situation
where they will have to delete a queue.

What happens to the work items when a work queue is deleted from PE?
Answer:
Process Engine work queue holds the work items. FileNet P8 doesn't provide any easier way to
delete a queue.
Queues can be deleted by initializing the isolated region. When a queue is deleted all the work
items in it are also deleted.
What is the use of Process Administrator?
Answer:
FileNet Process Administrator allows FileNet administrator to view and manage work in
progress.
Process Administrator is a Java Applet based UI and can be invoked from IBM Workplace's
admin section.
Following tasks can be performed though Process Administrator:
1. Search workflows, work items, workflow events, and workflow statistics.
2. It allows the administrator to search in specific area. Following areas are available for
search:
o

Workflow roster

User queue

Component queue

Work queue

System queue

Event log (only for searching events)

3. It allows to manage the workflows and work items in following ways:


o

Assign or reassign work to a user

Change workflow attributes, such as data field values and workflow group
members.

Complete work and send it on to the next step

Terminate work and send it to the termination step

Delete work, one or more work items or an entire workflow

Unlock work based on the current user or queue

4. It allows opening Process Tracker for the selected work item.


Where to find information about the workflows or work items which are terminated?
Answer:
The FileNet Process Administrator allows administrator to search for events in event logs. The
information about the terminated work items can be found though Process Administrator by
search for events.
Please note that PE queues only hold the information about active work items / workflows.

What is Process Engine Connection Point?


Answer:
Connection point (or Process Engine Connection Point) allows Process Engine APIs to connect
to an associated isolated region. The router process in FN 3.5 was replaced by connection points
in FN 4.0 onward releases.
FileNet CE uses connection points to connect to PE.
Connection points are defined in CE APIs and persisted in the Global Configuration Data (GCD)
on the Content Engine. The Content Engine's Enterprise Manager UI is used to create and
manage connection points.
PE Connection Point sample:
PE Server DNS, Port, Isolated Region Number
i.e
hqdemo1,32776,1
What is the difference between Workplace and Workplace XT? What are the benefits of
using FileNet Workplace XT?
Answer:
IBM FileNet Workplace, a part of FileNet Content Manager product suite, is an out-of-box web
based user interface for FileNet P8 Products.

Workplace XT is the next-generation FileNet P8 platform Web application.


Most of Workplace XT feature are same as Workplace; however, the procedures user perform to
complete an activity are different.
Workplace XT is faster, user friendly and has features like drag and drop to add documents.
IBM launched Workplace XT to compete with documentum and Alfresco, who has similar web
interfaces.
While most of the functionalities of Workplace XT are similar to the Workplace, it cannot be
considered as product upgrade as Workplace XT is built using Java Server Faces (JSF)
technology.
Workplace XT has better folder structure and nicer way to organize favorites.
Workplace XT does not provide a development environment for customization; however,
Workplace continues to provide the Workplace Application Toolkit and related development
tools for Workplace customization.
Note: IBM has plans to release the Workplace XT development tool kit in future releases.
FileNet P8 programming objective type questions for FileNet developers. Developers can use
these questions for preparation of interview as well as FileNet certifications.
Note: The bold marked option is answer of the question.
1. How many isolated regions can be created in FileNet PE?
1. 10
2. 5
3. 1024
4. Unlimited
2. Which component queue gets installed along with the PE installation?
1. PE_Operations
2. ProcessQueue
3. CE_Operations
4. AE_Operations
3. Using which protocol PE and AE communicate with CE?

1. UDP
2. HTTP
3. IIOP
4. SOAP
4. Which command is used in the vwtool to configure the connection to the external
database?
1. createDBViews
2. createCon
3. dbconfig
4. listdbconfig
5. Which one of the following step the workflow must end with?
1. Terminate Step
2. End Step
3. Terminate branch step
4. There is no such constraint
6. How many isolated regions can be connected to component manager at a time?
1. 1
2. 2
3. 1024
4. Unlimited
7. In workflows which of the following system function can be used to provide the web
service which can be invoked?
1. Invoke
2. Receive
3. Reply
4. WaitForCondition
8. Which data type is not supported by Workflows?
1. Object

2. Date
3. Time
4. BLOB
9. Which of the following method calls retrieves a desired event log?
1. mySession.getEventLog(eventLogName)
2. mySession.fetchtEventLog(eventLogName)
3. mySession.getEventsHistory(eventLogName)
4. mySession.findEventLog(eventLogName)
10. Which method should be used to move a work item to another users inbox?
1. VWStepElement.doReassign(userid, false, null);
2. VWStepElement.doDispatch(userid, false, inbox);
3. VWStepElement.moveToInbox(userid, false);
4. VWStepElement.reassign(userid);
11. Which one of the following method calls retrieves a list of the names of all work
classes/workflows within the isolated region?
1. String[] names = myPESession.fetchWorkflowNames(true)
2. String[] names = myPESession.fetchWorkclassNames(true)
3. String[] names = myPESession.getWorkflowNames(true)
4. String[] names = myPESession.listWorkflowNames(true);
12. Which work element provides access to all the fields of the work item?
1. VWWorkObject
2. VWStepElement
3. VWQueueElement
4. VWWorkflowDefinition
13. In the following line of Java code, vwObject must be an instance of which class?
Query = vwObject.createQuery(null, null, null, queryFlag, filters, null,
VWFetchType.FETCH_TYPE_WORKOBJECT);
1. VWSession

2. VWQueue
3. VWQueue or VWRoster
4. VWUser
14. Which one of the following method calls will end a Process Engine session and log the
user off?
1. VWSession.end()
2. VWSessiom.logoff()
3. VWSesssion.releaseSession()
4. VWSession.terminate()
15. Which VWStepElement method is used to save the changes made to the work object
associated with this step element and advances the work item to the next workflow step?
1. doComplete()
2. doDispatch()
3. doSave()
4. doPromote()
16. Which of the following method calls retrives a VWWorkflowMilesteones collections?
1. VWProcess.fetchWorkflowMilestones(level)
2. VWProcess.fetchReachedWorkflowMilestones(level)
3. VWProcess.fetchWorkflowMilestones(level)
17. Which method unlocks a work item associated with a step without updating the fields on
the work item?
1. VWStepElement.doAbort()
2. VWStepElement.doCancel()
3. VWStepElement.doUnlock()
4. VWStepElement.doTerminate()
18. An Annotation object can be added to which object type?
1. Document only
2. Documents and custom objects

3. Documents, custom objects and Folders


4. Custom Objects only
19. Which of the following files contains the configuration information for the Content
Engine Session?
1. CESessionConfig.properties
2. ContentAppConfig.properties
3. WcmApiConfig.properties
4. Bootstrap.properties
20. Which method would be used o determine if an Access Control Entry on a folder allows
or denies access to a user or group?
1. permission.getAccessType()
2. permission.getAccess ()
3. permission.getGranteeType()
4. permission.getACE()
5. Any of the above
21. Which one of the following statements is false?
1. Object obtained using ObjectFactory methods are persisted in the
ObjectStore
2. As ObjectStore object can be instantiated using the ObjectFactory
3. ObjectFactory methods help to create new and empty collection objects
22. Which one of the following statement creates an instance of CustomObject?
1. ObjectFactory.getObject(ClassDescription.TYPE_CUSTOMOBJECT);
2. objectStore.getObject(BaseObject..TYPE_CUSTOMOBJECT,
customeObjectClassName);
3. objectStore.createObject(customObjectClassName, properties, permissions)
23. Which line of code below retrieves the associations for a given document?
1. ObjectFactory.getObject(BaseObject.TYPE_Association, documentPath)
2. objectStore.getObject(BaseObject.TYPE_Association, documentPath)
3. document.getPropertiesValuesValue(Property.ANNOTATIONS)

24. If the subscription is assigned to the content engine Object class, which one of the
following results is correct?
1. subscriptions must me assigned indivisually to each object of that class
2. subscriptions automatically applies to the first instance of that class
3. subscription automatically applies to all new objects of the class
25. What does folder.getContainees() do?
1. retrieves the folders properties object
2. retrieves a collection of document, custom object and folder objects
contained in the folder
3. retrieves a collection of Document objects contained in the folder
26. As event action procedure can be defined in which of the following ways?
1. VBScript or Jscript only
2. com object only
3. VBScript, Jscript or COM Object
27. Which object is most suitable for storing properties with no content?
1. Document with no content
2. Properties object
3. Custom object
28. In what format an object stored searches saved in a FileNet P8 object store?
1. They are stored using a FileNet propritery format.
2. They are stored as HTML document
3. They are stored as XML document
29. Which one of the following methods below does not perform documents
autoclassification?
1. document.setContent(contentSource, true, true);
2. document.autoClassify();
3. document.checkin(true, true);
30. Which of the following statement retrieves a folder object?

1. ObjectFactory.getObject(BaseObject.TYPE_FOLDER, folderId);
2. objectStore.geFolder(folderId);
3. objectStore.getObject(BaseObject.TYPE_FOLDER, folderId);

You might also like