UCM VCR Adapter Guide

     Previous  Next    Open TOC in new window    View as PDF - New Window  Get Adobe Reader - New Window
Content starts here

Installation and Configuration

This chapter includes the following topics:

 


Installing the UCM VCR Adapter

The installation process includes these tasks:

Ensure the UCM Components are Installed

You must have the following UCM components installed to use the UCM VCR Adapter. For details on installing these components, refer to the UCM installation documentation.

Server Required Components

  1. Oracle Content Server 10gR3 (10.1.3.3.3) with Oracle Text Search (OracleTextSearch), Full Text Search (DATABASE.FULLTEXT), or Metadata-only Search (DATABASE.METADATA) configured.
  2. CS10gR35UpdateBundle
  3. Folders_g (Included in CS10gR35UpdateBundle)

Server Optional Components

  1. Site Studio 10gR4 (10.1.4.0.0) component
  2. SiteStudioSPI – Only-10gR4 component
  3. Note: This component is available on Oracle E-Delivery as one of the components included in part number V16530-01 Oracle Universal Content Management Web Content Management 10gR3 (10.1.3.3.7) for Windows, Linux and Unix.
  4. Custom Link Form (ss_docname_link_form.htm) must be checked in. You can obtain this Site Studio Link Form on the Oracle Technology Network, here: http://www.oracle.com/technology/products/content-management/ucm/samples/index.html.

Optional Client Components

Install the Patch

The UCM VCR Adapter is distributed as a public WebLogic Portal patch. You have two options for installing the patch. You can use the Smart Update application (part of your existing WLP installation) or you can perform a command-line installation of the patch file.

Installing with the Smart Update GUI Application

Smart Update provides a user interface that lets you install and manage WLP patches. Just start Smart Update, locate the public patch for the UCM VCR Adapter, and install it.

For detailed instructions on running and using Smart Update, see “Oracle Smart Update Installing Patches and Maintenance Packs” in Oracle Smart Update Installing Patches and Maintenance Packs.

Installing with the Command Line Utility

You can also install the patch using the Smart Update command line utility. For detailed information on using this utility, see “Using the Command-Line Interface” in Oracle Smart Update Installing Patches and Maintenance Packs.

Here is an example Smart Update command-line installation. In this example, the Patch ID is AAAA. When following these instructions, you must replace AAAA with the correct ID of the patch.

  1. If it is running, stop WebLogic Server.
  2. Download the patch file, AAAA.jar. In place of AAAA, use the correct ID of the patch you are installing.
  3. Ensure that the patch-catalog.xml and prod-info.xml files located in <BEA_HOME>/utils/bsu/cache_dir are updated based on one of the following two options.
    • If you have a brand new WLP 10gR3 install and you have not previously downloaded or installed any other patches, then you can copy the patch-catalog.xml and prod-info.xml files included in the patch file set you downloaded and replace the existing files of the same names that were created as part of the WLP 10gR3 GA installation process.
    • If you have installed patch updates to your original WLP 10gR3 installation (by having used Smart Update in the past), then run the Smart Update GUI to get the latest patch-catalog.xml and prod-info.xml files. Then, either use Smart Update to directly install the patch or exit the Smart Update GUI and use these Smart Update command line instructions to install the patch manually. (Note that the GUI automatically downloads the patch catalog to the bsu/cache_dir of the selected installation.)
  4. Put the downloaded AAAA.jar patch file into the Smart Update cache directory: <BEA_HOME>\utils\bsu\cache_dir, where AAAA is the ID of the patch you are installing.
  5. In a command window, go to the directory containing the Smart Update executables: <BEA_HOME>\utils\bsu.
  6. Enter the following command, where AAAA is the ID of the patch you are installing:
  7. bsu -prod_dir=<BEA_HOME>\wlportal_10.3 -patchlist=AAAA -verbose -install

  8. Restart WebLogic Server.

Select Profile Trigger Field on the UCM Server

The UCM VCR Adapter requires a Profile Trigger Field to have been configured on the UCM Server. This is done in the Configuration Manager applet, on the Profiles tab. For example, you could select the Type (dDocType) field as the trigger field.

Update Existing Domains

Note: Follow the steps in this section only if you are installing the adapter into an existing WLP domain. If you create a new domain after performing the patch installation (as described in Install the Patch on page 2-2), you can skip the steps in this section. Any new domain created after the patch is installed will automatically receive the patch artifacts.
Note: You must use separate tablespaces in your database for UCM and WLP, because both have a table called USER. For more information, see http://download.oracle.com/docs/cd/E13155_01/wlp/docs103/db/oracle.html#wp1063226.

The basic steps for updating an existing domain are using the WebLogic Server Console to remove several J2EE Shared Libraries and to install new ones. You must perform these steps for each WLP domain in which you want to use the UCM VCR Adapter.

Tip: For more detailed information on deployment, see “Deploying Applications and Modules with weblogic.deployer” in Deploying Applications to WebLogic Server.

Delete Existing Libraries

  1. Start WebLogic Server for the WLP domain you wish to update. It is recommended that you start the server from the command line using: <BEA_HOME>/user_projects/domains/<my_domain>/bin/startWebLogic.cmd/.sh
  2. Open the WebLogic Server Administration Console in a browser with the URL: http://<hostname>:<port>/console. For example, http://localhost:7001/console.
  3. In the Domain Structure part of the console, click Deployments.
  4. Tip: To increase the number of rows that are displayed in the table, click Customize the table and set the Number of rows displayed per page value to a larger number, like 100.
  5. In the Summary of Deployments panel, locate and select the following libraries.
  6. Note: The Status of these libraries was automatically set to Failed by the patch installer.

    content-management-app-lib(10.3.0,10.3.0)

    content-management-app-lib(10.3.0,10.3.0.1)

    content-management-web-lib(10.3.0,10.3.0)

    content-management-web-lib(10.3.0,10.3.0.1)

  7. Click Delete.
Note: If you see an error message, it is possible to safely ignore it. To verify that the libraries were deleted, click Deployments again to refresh the screen. The libraries should be gone. If any of the libraries are still in the list, try deleting them again.

Install New Libraries

  1. If it is not running, start WebLogic Server for the WLP domain you wish to update. It is recommended that you start the server from the command line using: <BEA_HOME>/user_projects/domains/<my_domain>/bin/startWebLogic.cmd/.sh
  2. If it is not already open, open the WebLogic Server Administration Console in a browser with the URL: http://<hostname>:<port>/console. For example: http://localhost:7001/console
  3. In the Domain Structure part of the console, click Deployments.
  4. Click Install.
  5. In the Install Application Assistant wizard, navigate to this directory:
  6. <BEA_HOME>\wlportal_10.3\content-mgmt\lib\j2ee-modules

  7. Select content-management-app-lib.ear, as shown in Figure 2-1.
  8. Figure 2-1 Install Application Assistant


    Install Application Assistant

  9. Click Next.
  10. Be sure Install this deployment as a library is selected, and click Next.
  11. In the Optional Settings panel, click Next.
  12. In the Review Your Choices panel, click Finish.
  13. (Optional) In the Settings for content-management-app-lib panel, change the Deployment Order to 1, and click Save.
  14. In the Domain Structure part of the console, click Deployments.
  15. Note: Now that the library has been installed, you need to update it, as explained in the following steps.
  16. In the Deployments table, select the library content-management-app-lib. Note that the Update button becomes active.
  17. Click Update.
  18. In the Update Application Assistant wizard, click Change Path.
  19. Navigate to <BEA_HOME>\wlportal_10.3\content-mgmt\lib\j2ee-modules\maintenance\1030\default.
  20. Select content-management-app-lib.ear, as shown in Figure 2-2.
  21. Figure 2-2 Update Application Assistant


    Update Application Assistant

  22. Click Next.
  23. Review your choices. You should see that the Specification Version is X and the Implementation Version is X.1, as shown in Figure 2-3.
  24. Figure 2-3 Review Your Choices


    Review Your Choices

  25. Click Finish.
  26. Note: If you see an error message, ignore it.
  27. In the Domain Structure part of the console, click Deployments.
  28. In the table, you should see both the installed and updated library files, as shown in Figure 2-4. Note that the version numbers may be slightly different depending on the actual patch version.
  29. Figure 2-4 Verifying the Libraries are Installed


    Verifying the Libraries are Installed

    You have successfully installed the first library.

  30. Now you need to install three more libraries. Follow the same steps you followed to install the first library (steps 3 through 22) to install each of the following libraries:

Add a Reference to the UCM VCR Adapter Shared Library

Use Workshop for WebLogic to add a library reference from your enterprise application to the UCM VCR Adapter library.

  1. Start Workshop for WebLogic.
  2. In the Package Explorer, navigate to the <EAR_PROJECT>/EarContent/META-INF folder.
  3. Right-click the file weblogic-application.xml and select Open With > WebLogic Deployment Descriptor Editor.
  4. In the editor, select the Libraries tab.
  5. Click the Add button, as shown in Figure 2-5.
  6. Figure 2-5 The Libraries Tab


    The Libraries Tab

  7. In the Select WebLogic Shared Library dialog, click the Manage Shared Libraries link near the bottom of the dialog.
  8. In the Preferences dialog, click Add.
  9. In the Add WebLogic Shared Library dialog, click Browse, and open the following library:
  10. <BEA_HOME>/wlportal_10.3/content-mgmt/lib/j2ee-modules/
    oracle-ucm-spi-app-lib.ear

  11. In the Add WebLogic Shared Library dialog, click OK.
  12. Verify that the library was added to the list of Shared Libraries and click OK.
  13. In the Select WebLogic Shared Library dialog, select the oracle-ucm-spi-app-lib library, and click OK. The library appears in the Shared Libraries list of weblogic-application.xml.
  14. Save the file weblogic-application.xml.

You have successfully added the UCM VCR Adapter library to your portal project.

Modify Cache Settings

You can configure or adjust UCM repository caches in two ways: in the EAR project file META-INF/p13n-cache-config.xml or in the Portal Administration Console (under Configuration & Monitoring > Service Administration). Cache settings made in the Portal Administration Console take precedence over the file-based settings. You can also flush the caches from the Portal Administration Console.

Note: If you already have a p13n-cache-config.xml file configured for another repository, simply add the UCM repository cache settings into that file.

Table 2-1 and Table 2-2 describes the available cache settings in p13n-cache-config.xml. Table 2-1 describes the VCR caches, which are caches used by the VCR component. These caches are repository specific and can exist for any repository. Table 2-2 describes the SPI caches, which are specific to the UCM SPI Adapter component.

The pattern for the cache entry names is <elementName>.<repositoryName>, where <repositoryName> is the name of the UCM repository as specified in the META-INF/content-config.xml file. For example, nodeCache.StellentRepository.

Note that <time-to-live> values are specified in milliseconds.

Table 2-1  VCR-Level Cache Entry Descriptions
Cache Entry Name
Description
nodeCache.<repositoryName>
Caches node id to node instance for this repository. Defaults: enabled = true; time-to-live = 60000, max-entries = 50.
nodePathCache.<repositoryName>
Caches node path to node id for this repository. Defaults: enabled = true; time-to-live = 60000, max-entries = 50.
typeCache.<repositoryName>
Caches type id to type instance for this repository Defaults: enabled = true; time-to-live = 300000, max-entries = 200.
typeNameCache.<repositoryName>
Caches type name to type id for this repository. Defaults: enabled = true; time-to-live = 300000, max-entries = 200.
binaryCache.<repositoryName>
Defaults: enabled = true; time-to-live = 60000, max-entries = 25.
Note: The maximum binary entry size is specified as the repository property binaryCacheMaxEntrySize which has a default value of 102400 bytes (100 kb).
searchCache.<repositoryName>
Caches search results for this repository. Defaults: enabled = true; time-to-live = 300000, max-entries = 200.
nativeAuthCache.<repositoryName>
Authorization cache for this repository when using native security. Defaults: enabled = true; time-to-live = 5000, max-entries = 5000.

Table 2-2  SPI-Level Cache Entry Descriptions
Cache Entry Name
Description
repo.ucm.typeNameCache.<repositoryName>
Caches UCM server type metadata by type name. Defaults: enabled = true; time-to-live = 1800000 (30 minutes), max-entries = 5000
repo.ucm.nodePathToUidCache.<repositoryName>
Caches UCM server node ids by node path. Defaults: enabled = true; time-to-live = 1800000 (30 minutes), max-entries = 5000
repo.ucm.nodeUidCache.<repositoryName>
Caches UCM server node metadata by node id. Defaults: enabled = true; time-to-live = 1800000 (30 minutes), max-entries = 5000
repo.ucm.securityInfoCache.<repositoryName>
Caches UCM server node security information. Defaults: enabled = true; time-to-live = 1800000 (30 minutes), max-entries = 5000
repo.ucm.typeNamesCache.<repositoryName>
Caches the list of UCM type names. Defaults: enabled=true, time-to-live=1800000 (30 minutes), max-entries=5000
repo.ucm.indexedFieldsCache.<repositoryName>
Caches information about which UCM fields are indexed. Defaults: enabled=true, time-to-live=1800000 (30 minutes), max-entries=5000

 


Configuring the Adapter

After the adapter is added to your WLP project, you are ready to configure it. Configuring means specifying how the adapter will talk to the UCM content repository. For example, the adapter has to know where the UCM server is running, its port number, an admin account name, and so on.

There are two configuration scenarios to consider. If you primarily work with the IDE in a development environment, you can configure the adapter by editing a configuration file. If you are a portal administrator who uses the WLP Administration Console, you can use the Administration Console to configure the adapter.

Configuring the Adapter in a Development Environment

This section explains how to configure the adapter using a configuration file. Developers working primarily in the IDE commonly use this method.

Note: Because of the way in which WLP uses deployment plans, adapter configurations made in the WLP Administration Console take precedence over configurations made in the content-config.xml file.
  1. Open the content-config.xml file. This file is located in the META-INF directory of your Portal EAR Project.
  2. Edit the required elements in the file using Table 2-3 and Listing 2-1 as a guide.
  3. Save the configuration file.
  4. Redeploy the portal application.

Table 2-3 describes the required elements in content-config.xml that you must configure to successfully use the adapter.

Table 2-3  Configuration File Elements
Element
Description
class-name
The class name of the adapter, which is com.oracle.content.spi.ucm.RepositoryImpl.
username
If you use the global config user security option (see WLP-Secured Global Config User on page 2-20 or Natively-Secured Global Config User), this element specifies the UCM Server username that is used to retrieve data from UCM, regardless of the WLP user. In other words, all WLP users in an enterprise application will see the data for this UCM repository instance.
Note: If you configure the identity propagation option, do not specify this element (see Identity Propagation with Native Security on page 2-20).
ContentServerHostname
The hostname or IP address of the server on which the UCM repository is running.
ContentServerPort
The Intradoc port number on which the UCM repository is listening. This corresponds to the IntradocServerPort setting in the Content Server configuration file, which defaults to port 4444.
ContentServerAdminUser
The user name of a valid administrative user of the UCM repository. This user must have the admin role.
ContentServerServiceType
Protocol used to connect with the UCM Server. Valid options are INTRADOC or INTRADOC_SSL. INTRADOC is the default.
ContentServerSSLKeyStoreFile
Absolute path to the client SSL keystore file. Only used when ContentServerServiceType is INTRADOC_SSL.
ContentServerSSLKeyStorePassword
SSL keystore password. Only used when ContentServerServiceType is INTRADOC_SSL.
ContentServerSSLKeyStoreAlias
SSL keystore alias name. Only used when ContentServerServiceType is INTRADOC_SSL.
ContentServerSSLKeyStoreAliasPassword
SSL keystore alias password. Only used when ContentServerServiceType is INTRADOC_SSL.
CacheInvalidationInterval
Polling interval in minutes for the UCM Adapter CacheInvalidator IntervalJob (must be equal to or greater than 2 minutes). This cache automatically invalidates cached content in WLP as content is changed on the UCM server.
folder_badge_objectClasses
Specifies a list of UCM ObjectClasses that are displayed as folders in the WLP Administration Console. For the UCM VCR adapter, set this value to IDC:Folder.
TypeRetrievalShapeUser
Specifies a UCM user account that is used to retrieve all types (ObjectClasses) from UCM. UCM profiles can take into account the UCM user when determining which fields are on a profile. WLP uses this setting to ensure that the UCM type retrieval is identical regardless of the WLP user. This user account does not need any special roles on the UCM server.
useNativeSecurity
When this element is enabled, the native UCM security will be used to secure content. When disabled, the VCR federated security (entitlements) will be used to secure content in addition to the native UCM security. Default is false (disabled). For more information, see Configuring Security on page 2-19.
Note: For best performance, use native security (useNativeSecurity = true).
ContentServerConnectionPoolSize
Default: 20
ContentServerConnectionTimeout
Unit of measure is milliseconds. Default: 60000 (one minute)

Listing 2-1 shows a sample configuration file with the required elements highlighted in bold type.

Listing 2-1 Sample Configuration for the UCM VCR Adapter
     <!-- UCM test repository -->
<content-store>
<name>UCMRepository</name>
<class-name>com.oracle.content.spi.ucm.RepositoryImpl
</class-name>
<username>wlpApp</username>
<repository-property>
<description>Hostname on which the UCM Content Server
is running
</description>
<name>ContentServerHostname</name>
<value>10.221.19.72</value>
</repository-property>
<repository-property>
<description>Port on which the UCM Content Server is running (on
host named above)
</description>
<name>ContentServerPort</name>
<value>4444</value>
</repository-property>
<repository-property>
<description>Content Server uname in Admin role, for
security checks
</description>
<name>ContentServerAdminUser</name>
<value>sysadmin</value>
</repository-property>
<repository-property>
<description>List of folder ObjectClasses</description>
<name>folder_badge_objectClasses</name>
<value>IDC:Folder</value>
</repository-property>
<repository-property>
<description>Single user for all type related interactions
</description>
<name>TypeRetrievalShapeUser</name>
<value>typeShapeUser</value>
</repository-property>
<repository-property>
<name>useNativeSecurity</name>
<value>true</value>
</repository-property>
<repository-property>
<description>Protocol used to connect with the UCM Server.
Valid options are INTRADOC or INTRADOC_SSL. INTRADOC is the
default.
</description>
<name>ContentServerServiceType</name>
<value>INTRADOC</value>
</repository-property>
<repository-property>
<description>Polling interval for the
CacheInvalidator IntervalJob
(must be equal to or greater than 2 min)
</description>
<name>CacheInvalidationInterval</name>
<value>2</value>
</repository-property>
<repository-property>
<description>Location on the filesystem of the
client SSL keystore
file. Only used when ContentServerServiceType
is INTRADOC_SSL
</description>
<name>ContentServerSSLKeystoreFile</name>
<value>c:/client_keystore</value>
</repository-property>
<repository-property>
<description>SSL keystore password. Only used when
ContentServerServiceType is INTRADOC_SSL
</description>
<name>ContentServerSSLKeystorePassword</name>
<value>idcidc</value>
</repository-property>
<repository-property>
<description>SSL keystore alias name. Only used when
ContentServerServiceType is INTRADOC_SSL
</description>
<name>ContentServerSSLKeystoreAlias</name>
<value>SecureClient</value>
</repository-property>
<repository-property>
<description>SSL keystore alias password. Only used when
ContentServerServiceType is INTRADOC_SSL
</description>
<name>ContentServerSSLKeystoreAliasPassword</name>
<value>idcidc</value>
</repository-property>
<read-only>true</read-only>
<binary-cache-max-entry-size>102400</binary-cache-max-entry-size>
<!-- metadata search -->
<search-is-enabled>true</search-is-enabled>
<!-- full text search -->
<fulltext-search-is-enabled>true</fulltext-search-is-enabled>
<search-indexing-is-enabled>false</search-indexing-is-enabled>
</content-store>

Configuring the Adapter in the Administration Console

Users who typically work on staged or production portals use the WebLogic Portal Administration Console to configure content repositories. This section summarizes the basic configuration steps for this scenario. For more detailed instructions, see "Configuring Additional Repositories" in the Oracle Fusion Middleware Content Management Guide for Oracle WebLogic Portal.

Once the UCM repository is deployed and running it must be connected to WebLogic Portal so that it appears as part of its Virtual Content Repository. To add the UCM repository:

  1. Open the WebLogic Portal Administration Console.
  2. Select the Content tab to enter the Content Management page.
  3. Select the Repositories link to view the repositories. This link is above the tree view on the left.
  4. Click Virtual Content Repository at the top of the repository tree.
  5. In the editor pane to the right, click the Add Repository Connection button.
  6. Complete the Add Repository Connection dialog with the following information:
  7. Field
    Description
    Name
    A name you choose for the adapter.
    Connection Class
    The class name of the adapter, which is com.oracle.content.spi.ucm.RepositoryImpl.
    Datasource JNDI name
    Not required.
    Username
    If using the global config user option (all users of the application use the same credentials to connect to UCM), this field specifies the user name of a valid user of the UCM repository. For more information on security, see Configuring Security on page 2-19
    Password
    Not necessary for the UCM VCR Adapter.
    Enable Library Services
    Set this field to false.

  8. Click Create. The new repository appears in the repository tree on the left hand side.
  9. Note: If you receive an error after clicking Create, click the Refresh Tree button. The words “can’t connect” appear next to the new repository name in the Administration Console. To correct the problem, select the new repository and use the Add Property dialog to add the required properties indicated by the error message: ContentServerHostname, ContentServerPort, ContentServerAdminUser.
  10. Using the Administration Console, configure the same repository properties listed and described previously in Table 2-3.

 


Configuring Security

There are three ways to configure security for the UCM VCR Adapter, as explained in this section.

Note: The VCR adapter user identity assertion to the UCM content server will not work properly if the UCM Content Server users that are being referenced by WLP exist in an ActiveDirectory and the UCM Content Server has been configured to use a non-LDAP based ActiveDirectory. This configuration is not supported.
Note: A local or global user identity store will work, as will an external LDAP-based store (either ActiveDirectory or other LDAP).
Note: For best performance, use native security (useNativeSecurity = true).

WLP-Secured Global Config User

All users in the application use the same credentials to connect to the UCM instance. The data is secured through WebLogic Portal. WLP Content Entitlements will apply. Configure this type of security with these settings in the META-INF/content-config.xml file in the EAR Project, as described in the following table.

Field
Value
Username
The user name of a valid user of the UCM repository.
useNativeSecurity
false

Natively-Secured Global Config User

All users in the application use the same credentials to connect to the UCM instance. Data is secured through UCM. WLP Content Entitlements will not apply. Configure this type of security with these settings in the META-INF/content-config.xml file in the EAR Project:

Field
Value
Username
The user name of a valid user of the UCM repository.
useNativeSecurity
true

Identity Propagation with Native Security

WebLogic Portal and UCM use the same security store, such as a shared LDAP store. Each WLP user sees in the application what they are permitted to see on the UCM side. Entitlements (WLP content security) are disabled.

Field
Value
Username
Do not set a value for this field.
useNativeSecurity
true

 


Verifying the Installation

To verify the installation, open the WLP Administration Console, go to the Content Management section, and attempt to browse to the UCM repository and view its contents or types.


  Back to Top       Previous  Next