Assets that need special consideration
Although you must prepare all of the assets that you plan to deploy, several types of assets require special consideration.
Assets that cannot be exported or imported
Although you can use FileNet® Deployment Manager to export and import most Content Platform Engine assets, there are exceptions.
- Object stores: When you add an object store to an export manifest, you add most of the objects of the object store, not the ObjectStore object itself. Use the New Object Store wizard in the administration console to create an object store. Alternatively, use the Reassign Object Store wizard in FileNet Deployment Manager to reassign an object store from the source environment to the destination environment.
- File stores: Create a file store and follow the instructions for moving a file storage area. For more information, see Moving a file storage area. Export the document or annotation that contains the content to export content from a file store.
- Content cache stores: For the destination object store, create a content cache.
- Domain objects: Domain objects include add-on features, authentication provider configurations,
and fixed content device configurations. Except for marking sets, you cannot move FileNet P8 domain resources between FileNet
P8
domains; after the new FileNet
P8
domain is created, each of its resources must be individually re-created. Objects that refer to
domain objects, except for marking sets, can be exported and imported normally. If an object
references a marking set, it is not imported unless there is a marking set that matches the same ID
at the destination. Tip: Optionally, to redeploy an object store and its associated workflow system into another FileNet P8 domain, you can reassign the object store to the new domain. For more information, see Reassigning an object store.
- Mappings of document classes that are mapped to an IBM® Content Manager OnDemand application group. Although you can export mapped document classes, any mappings to Content Manager OnDemand application groups are not maintained.
- System-generated thumbnails: You can regenerate thumbnails on the destination object store.
- Objects that are marked for deletion: These objects are objects added to the recovery bin. For more information about importing documents marked for deletion at the destination, see Importing converted objects
- Permissions on an individual object that originates from a security template that is applied to the object. Although the object itself can be imported, its permissions are dropped.
System classes
- Unless you must apply a change to existing subclasses, create a subclass instead of modifying a system class. For example, consider creating subclasses for classes such as Document, Folder and Custom Object. Using subclasses of the system classes helps you to avoid initial migration issues and potential upgrade issues as you move from one FileNet P8 release to another.
- If you want to export a modified system class (one in which you added a custom property), you can either explicitly add the class to the export manifest, or export the associated modified system class with an object that you are adding to the export manifest (using the Include modified system classes option in the Include Options window). If you export associated modified system classes, proceed with caution. Some system class definitions, such as the base Document class definition, are considered as modified because of the changes that are introduced by the standard FileNet P8 add-on features. Selecting this include option adds those class definitions to your deployment data set if they are associated with the object that you are adding to the export manifest. Importing that data set with updates set to enabled then applies any changes from the source system to the destination, most notably replacing the permissions in the Access Control List (ACL) on the destination class definition with the permissions from the source class definition.
Content-based retrieval settings
If content-based retrieval (CBR) is enabled on a source object store, use the following precautions before you attempt to import documents.
- If the base Document class in the source object store is CBR-enabled,
verify that the destination object store is enabled and configured
for CBR; otherwise, the document import fails.
Attempting to import a CBR-enabled Document class enables CBR on a destination object store that is not configured for CBR. However, because no index area is configured for the destination object store (because it was previously not enabled for CBR), no documents are imported.
- FileNet Deployment Manager does not support importing or exporting of CBR query optimization configuration.
- If you are importing a set of classes in which the base Document
class is CBR-enabled, verify that all of its subclasses are also CBR-enabled.
If they are not, the document import fails. The document import succeeds
only if the Document class and its subclasses are either all CBR-enabled
or all CBR-disabled.
To import a mix of CBR-enabled and CBR-disabled subclasses, you must import the Document class and subclasses separately from the document content, as follows:
- Export and import the Document class and subclasses.
- In the destination object store, set the
IsCBREnabled
property as needed for the Document class and each of its subclasses so that it has the same value (either true or false) for each class. - Export and import the document content for the Document class and its subclasses.
Add-on features
- The object is a class definition, property template, or choice list.
- The object was created by using an add-on feature (its
InstalledByAddOn
property has a non-null value). - The object was not modified since it was created (its
DateLastModified
property either has a value within 30 seconds of the value of itsDateCreated
property or has a value of null).
If an add-on script modifies a metadata object after you created it, the metadata object is not filtered from the export data set because its last modified date is different from its creation date. If an object is modified within 30 seconds of when it was created, the server assumes that the modification was made by an add-on script.
FileNet Deployment Manager includes a user preference that specifies whether metadata assets that were created by an add-on are included when assets are exported.
If you have objects that require an add-on on the source, that add-on feature must be enabled on the destination in order for FileNet Deployment Manager to import objects. These objects include social collaboration objects and thumbnails.
Object updates
During the import operation, you can choose to update properties of objects that exist in the destination environment. If the ID of an existing object on the destination object store matches the ID of the imported object, the properties of the existing object are updated with the values of any matching properties on the imported object.
If the property of a standard, non-metadata type of object (such as a document, folder, or custom object) can be modified after the object is created, then the value of the property can be updated by an import operation.
Permissions object collections
Before an
existing object collection returned by a Permissions property is updated
during an import operation, all AccessPermission
objects
with a PermissionSource
property value of Default
or Direct are deleted. The imported AccessPermission
objects
with a PermissionSource
property value of Default
or Direct are added to the Permissions object collection.
ClassDefinition classes
ClassDefinition
class
properties can be updated only by an import operation:- Properties that do not hold dependent object lists:
- AllowsInstances
- IsCBREnabled
- IsHidden
- Owner
- SymbolicName
- Properties that hold dependent object lists:
- AuditDefinitions
- DescriptiveTexts
- DisplayNames
- Permissions
- PropertyDefinitions
PropertyTemplate classes
PropertyTemplate
class
properties can be updated by an import operation:- Properties that do not hold dependent object lists:
- IsHidden
- IsNameProperty
- IsValueRequired
- MaximumLengthBinary
- MaximumDateTime
- MaximumFloat64
- MaximumInteger32
- MaximumLengthString
- MinimumDateTime
- MinimumFloat64
- MinimumInteger32
- ModificationAccessRequired
- PropertyDefaultBinary
- PropertyDefaultBoolean
- PropertyDefaultDateTime
- PropertyDefaultFloat64
- PropertyDefaultInteger32
- PropertyDefaultId
- PropertyDefaultObject
- PropertyDefaultString
- PropertyDisplayCategory
- Settability
- SymbolicName
- Properties that hold dependent object lists:
- DescriptiveTexts
- DisplayNames
LocalizedStringList object collection
Special
handling is required for the LocalizedStringList
dependent
object collection (returned by DescriptiveTexts
and DisplayNames
properties).
If a match is found between the LocaleName
property
of a LocalizedString
dependent object on the target
object, and the LocaleName
property of a LocalizedString
object
in the imported object, the existing dependent object is used and
its LocalizedText
property is updated. If no match
exists between the two, the imported LocalizedString
object
is added as a new object.