Skip Headers
Oracle® Coherence Release Notes
Release 3.7.1

E22623-17
Go to Documentation Home
Home
Go to Book List
Book List
Go to Table of Contents
Contents
Go to Index
Index
Go to Feedback page
Contact Us

Go to previous page
Previous
Go to next page
Next
View PDF

2 Documentation Errata

This chapter describes changes, enhancements, and corrections made to the Oracle Coherence documentation library for the 3.7.1 release.

The Coherence documentation library can be found at the following URL:

http://download.oracle.com/docs/cd/E24290_01/index.htm

This chapter contains the following sections:

Incorrect Interface in the REST Documentation

The REST documentation in Oracle Coherence Client Guide refers to a com.tangosol.util.EntryAggregator interface that is used to create custom aggregators. This interface does not exist in the distribution. The correct API should be com.tangosol.util.InvocableMap.EntryAggregator.

POF Serialization on a Proxy Server

The Oracle Coherence Client Guide incorrectly documents POF serialization behavior on a proxy: "The proxy deserializes POF data put into the cache, and serialize data it returns to the client." The proxy no longer performs deserialization and POF data remains serialized.

POF Object References are Not Evolvable

POF supports the use of object identities and references for objects that occur more than once in a POF stream. POF object references are not supported for Evolvable objects. The Evolvable interface is implemented by classes that require forwards- and backwards-compatibility of their serialized form. For more information on the Evolvable interface, see the Evolvable interface in the Java API Reference for Oracle Coherence.

Note these additional limitations on using POF object references:

For more information on POF object references, see "Using POF Object References" in Oracle Coherence Developer's Guide.

Support for Coherence on Virtualized Environments

Coherence Administrator's Guide incorrectly states that Coherence is supported on all virtualized environments. The correct statement is that Oracle Coherence follows the support policies of Oracle Fusion Middleware. See the following link for Oracle Fusion Middleware supported virtualization and partitioning technologies:

http://www.oracle.com/technetwork/middleware/ias/oracleas-supported-virtualization-089265.html

Configuring the Name of the Cache File for Coherence*Web

The context parameter coherence-cache-configuration-path allows Coherence*Web users to configure the name of the cache file in the web.xml file.

The following example illustrates a sample coherence-cache-configuration-path configuration. In the example, your-cache-config-name.xml represents the name of the cache configuration file in the your_app directory that you want Coherence*Web to use.


...
<context-param>
   <param-name>coherence-cache-configuration-path</param-name>
   <param-value>c:\your_app\your-cache-config-name.xml</param-value>
</context-param>

...

Coherence*Web and WebLogic Server in the Tutorial

In Step 6 of "Create the Counter Web Application" in Oracle Coherence Tutorial lists the name of the manifest file as being manifest.mf. This is an error. The name of the manifest file is case-sensitive and must be in upper case: MANIFEST.MF.

If you are using the 10.3.6 version of WebLogic Server with Coherence 3.7.1, then in the section "Start a Cache Server", you must add the -Dtangosol.coherence.cluster=CoherenceCluster system property to the startup command. In the 10.3.6 version of WebLogic Server, a cluster name check has been added. The tangosol.coherence.cluster property must be added to the cache server because you are declaring the cluster name in the WebLogic Server application. If the Coherence servers are started in standalone mode, they must pass this property, otherwise the cluster will not form between the WLS servers and the standalone cache server.

Custom Eviction Policies Must Extend AbstractEvictionPolicy Class or Implement EvictionPolicy Interface

Custom eviction policies must extend the com.tangosol.net.cache.AbstractEvictionPolicy class or implement the com.tangosol.net.cache.ConfigurableCacheMap.EvictionPolicy interface. The documentation for the <local-scheme> element in the Oracle Coherence Developer's Guide incorrectly states to implement the com.tangosol.net.cache.LocalCache.EvictionPolicy interface.

IMB Reliable Transport Excluded From Documentation

The InfiniBand Message Bus (IMB) protocol can be enabled for reliable transport. IMB uses an optimized protocol based on native InfiniBand verbs. For details about configuring reliable transport, see "unicast-listener Subelements" in Oracle Coherence Developer's Guide.

Incorrect Large Cluster Recommendation

The Large Cluster Configuration Recommendation section in Oracle Fusion Middleware Administering Oracle Coherence contains an error regarding setting the partition count. The first bullet in the section should be replaced as follows:

Distributed caches on large clusters of more than 16 cache servers require more partitions to ensure optimal performance. The default partition count is 257 and should be increased relative to the number of cache servers in the cluster and the amount of data being stored in each partition.

Incorrect AbstractMultiplexingBackingMapListener Implementation Example

Example 21-17 in Oracle Coherence Developer's Guide contains an error that affects performance. The example should not call the sleep method on the current thread. The example should be written as follows:

import com.tangosol.net.BackingMapManagerContext;
import com.tangosol.util.MapEvent;
 
public class VerboseBackingMapListener extends AbstractMultiplexingBackingMapListener {
 
        public VerboseBackingMapListener(BackingMapManagerContext context) {
                super(context);
        }
 
        @Override
        protected void onBackingMapEvent(MapEvent mapEvent, Cause cause) {
                System.out.printf("Thread: %s Cause: %s Event: %s\n",
                Thread.currentThread().getName(), cause, mapEvent);
        }
}

Incorrect Default Value for low-units Element

In Oracle Coherence Developer's Guide, the default value of the <low-units> element is incorrectly documented as 75% of the <high-units> value. The correct default value is 80% of the <high-units> element.

Incorrect Value for service-component Element

Table A-49 in the "Operational Configuration Elements" appendix in Oracle Coherence Developer's Guide incorrectly lists DistributedCache as a legal value for the <service-component> element. The correct value should be PartitionedService.PartitionedCache.

Incorrect Subelements Listed for front-scheme Element

Table B-23 in the "Cache Configuration Elements" appendix in Oracle Coherence Developer's Guide incorrectly lists <external-scheme>, <paged-external-scheme>, <flashjournal-scheme>, and <ramjournal-scheme> as being valid subelements of the <front-scheme> element. In the Coherence 3.7.1.x releases, the only valid subelements of the <front-scheme> element are <local-scheme> and <class-scheme>.

Incorrect Command Line to Start Cache Server

"Deploying and Running Applications Out-of-Process" in the User's Guide for Oracle Coherence*Web. incorrectly lists the application WAR file (c:/application.war) in the command line to start a cache server. The corrected command line should be as follows:

java -server -Xms512m -Xmx512m  -cp <Coherence installation dir>/lib/coherence.jar:<Coherence installation dir>/lib/coherence-web.jar -Dtangosol.coherence.management.remote=true -Dtangosol.coherence.cacheconfig=session-cache-config.xml  -Dtangosol.coherence.session.localstorage=true com.tangosol.net.DefaultCacheServer

Corrections to WebLogic Portal—Coherence*Web Integration Instructions

This section describes corrections to the instructions to integrate WebLogic Portal with Coherence*Web that appear in the "Using Coherence*Web with WebLogic Portal" chapter in the User's Guide for Oracle Coherence*Web.

Start a Cache Server Section:

In the "Start a Cache Server" section, there is an error in the cache server startup command in Step 1. The command should be the following:

java -server -Xms512m -Xmx512m -cp <Coherence installation dir>/lib/coherence.jar:<Coherence installation dir>/lib/coherence-web-spi.war -Dtangosol.coherence.management.remote=true -Dtangosol.coherence.cacheconfig=C:\Coherence371\coherence\session-cache-config.xml -Dtangosol.coherence.session.localstorage=true com.tangosol.net.DefaultCacheServer

The command assumes that you have extracted the session-cache-config.xml file from the coherence-web.jar file and stored it in the C:\Coherence371\coherence\ directory.

In 3.7.1, the session-cache-config.xml file has been moved from the coherence-web-spi.war file to the coherence-web.jar file. The coherence-web.jar file can be found in the coherence\lib directory.

Deploying Coherence Cache Provider for Out-of-Process Topology Section:

This section provides revised instructions for deploying the Coherence cache provider for out-of-process topologies.

  1. Obtain the session cache and portal cache configuration files:

    • Extract the session-cache-config.xml file from the coherence-web.jar file.

    • Extract the portal-cache-config.xml file from the coherence-wlp.jar file.

  2. Merge the contents of the session-cache-config.xml and portal-cache-config.xml files so that a set of Coherence grid nodes can support both types of objects: session and P13N cache.

    You will need two copies of this file: one that will be used by the Coherence cache servers and one that will be used by the WebLogic Portal managed servers. The contents of the two files will be identical, except for the values of the local-storage properties in the portal cache and the session cache sections.

    Example D–1 in Appendix D, "Cache Configuration for WebLogic Portal and Oracle Coherence" illustrates a merged configuration file that can be used for the WebLogic Portal managed servers. The local-storage values for the session cache and portal cache are set to false. The configuration file for the Coherence cache server can be the same as Example D–1, except the values for the local-storage system property in the session cache configuration section and portal cache configuration section must be set to true.

  3. Use the merged configuration file for the WebLogic Portal managed server as the cache configuration file for the servers. For each application that will run on the WebLogic Portal managed server, copy the file to the application's APP-INF/classes directory.

  4. Set the merged configuration file for the Coherence caches as the cache configuration for the Coherence grid JVMs. For example, in the following system property to locate the cache configuration file, portal-session-cache-config.xml represents the merged file:

    -Dtangosol.coherence.cacheconfig=D:\Coherence1212\coherence\temp\portal-session-cache-config.xml
    
  5. Add the system properties to disable local storage for the WebLogic Portal managed servers. For example, you can add the following properties to your Coherence cache server startup script:

    -Dtangosol.coherence.weblogic.localstorage=false -Dtangosol.coherence.distributed.localstorage=false -Dtangosol.coherence.session.localstorage=false
    
  6. Copy the coherence.jar and coherence-wlp.jar files to the APP-INF/lib directory of your EAR file.

    See the deployment instructions in "Using Coherence*Web with WebLogic Portal—Main Steps".

  7. Start the WebLogic Portal managed servers.

Incorrect Initialization Parameter Listed for PofAnnotationSerializer Class

The "Enabling Automatic Indexing" section in Coherence Client Guide incorrectly lists a PofAnnotationSerializer class initialization parameter type as boolean. The correct parameter type is bool.

Incorrect Macro Name for the Reporter file-name Element

The documentation incorrectly lists sequence as a valid macro for the <file-name> element that is located in a report configuration file. The correct macro name is batch.

Using the id Attribute in Host-Based Authorization

The "Using Host-Based Authorization" section in the Coherence Security Guide does not include instructions for using the id attribute with the <host-address> and <host-range> elements. The id attribute is used to uniquely identify multiple address or range elements, for example:

<authorized-hosts> 
   <host-address id="1">192.168.0.5</host-address> 
   <host-address id="2">192.168.0.6</host-address>  
   <host-range id="1">  
      <from-address>192.168.0.10</from-address>  
      <to-address>192.168.0.20</to-address> 
   </host-range> 
   <host-range id="2">   
      <from-address>192.168.0.30</from-address>  
      <to-address>192.168.0.40</to-address>  
   </host-range>   
</authorized-hosts>   

Specifying the Session Cache for Session Management

In the "Setting Up Coherence Session Management" section of the Coherence Client Guide, you must also specify a session cache if you do not want to use the default cache. If a session cache is not specified, then the default cache, aspnet-session-storage, is used. In the following example, the cache name is specified as my-session-cache.

...
<providers>
    <add name="CoherenceSessionProvider"
              type="Tangosol.Web.CoherenceSessionStore, Coherence"
              cacheName="my-session-cache"
              model="split"
              externalAttributeSize="512"/>
</providers>
...

Incorrect Schema Versions

The documentation provides the wrong schema version in the public URL for schema locations. The correct URLs are as follows:

Additions and Corrections to Elastic Data Documentation

There are several additions and corrections which should be made to the Elastic Data documentation in the Coherence Developer's Guide.

Coherence*Web Session Locking Context Parameter Values for Session Locking Modes

"Session Locking Modes" in Oracle Coherence User's Guide for Oracle Coherence*Web describes the locking modes that are available in Coherence*Web and the context parameter values that are required to specify each mode. Table 2-2 presents a summary of the session parameter values for each session locking mode.

Table 2-2 Values of Session Locking Context Parameters for Session Locking Modes

Session Locking Modes coherence-session-thread-locking coherence-session-app-locking coherence-session-member-locking coherence-session-locking

Last Write Wins Locking (default)

false (default)

false (default)

false (default)

false (default)

Optimistic Locking

false

false

false

true

Member Locking

false

false

true

(true)

Application Locking

false

true

(true)

(true)

Thread Locking

true

(true)

(true)

(true)


* (true) means that the context parameter values are changed automatically by the super context parameter value.

Incorrect Default Value for coherence-session-thread-locking Parameter

The description of the coherence-session-thread-locking parameter in the "Coherence*Web Context Parameters" appendix in User's Guide for Oracle Coherence*Web incorrectly lists the default value as true. The correct default value should be false.

Incorrect Value for the tangosol.coherence.management.remote Property

In "Stopping a Cluster Member from being Managed Remotely" in Oracle Coherence Management Guide. the example at the end of the section lists an incorrect value of true for the tangosol.coherence.management.remote property. The correct value for the property should be as follows:

-Dtangosol.coherence.management.remote=false

Incorrect Information for Optimistic Locking for Coherence*Web

The 3.7.1 version of the User's Guide for Oracle Coherence*Web contains the following incorrect information for Optimistic Locking:

In the section, "Optimistic Locking":

In Appendix A, "Coherence*Web Context Parameters":

Incorrect Information Regarding Sticky Sessions and Distribution Controller for Coherence*Web

The description of the coherence-distribution-class context parameter in the 3.7.1 and earlier versions of "Coherence*Web Context Parameters" in User's Guide for Oracle Coherence*Web states that this parameter requires coherence-sticky-sessions optimization to be enabled. This is not correct. The coherence-distribution-class context parameter is not dependent on sticky sessions.

Coherence*Web Support for IBM WebSphere Application Server

Support for WebSphere Application Server 8 was added to Coherence*Web in release 3.7.1.4. Support for WebSphere Application Server 8.5 was added in release 3.7.1.8.

Corrections and Clarifications to Configuring Coherence*Web for WebLogic Portal

There were errors in the "Deploying Coherence Cache Provider for Out-of-Process Topology" section of User's Guide for Oracle Coherence*Web. Corrections and clarifications have been made to the instructions on how to deploy the Coherence cache provider for out-of-process topology in the WebLogic Server Portal. Use the following instructions instead.

  1. Obtain the session cache and portal cache configuration files:

    • Extract the default-session-cache-config.xml file from the coherence-web.jar file.

    • Extract the portal-cache-config.xml file from the coherence-wlp.jar file.

  2. For the Coherence Cache Server:

    1. Merge the contents of the default-session-cache-config.xml and portal-cache-config.xml files so that a set of Coherence grid nodes can support both types of objects: session and P13N cache.

      You will need two copies of this file: one that will be used by the Coherence cache servers and one that will be used by the WebLogic Portal managed servers. The contents of the two files will be identical, except for the values of the local-storage properties in the portal cache and the session cache sections.

      Example F–1 in Appendix F, "Cache Configuration for WebLogic Portal and Oracle Coherence" illustrates a merged configuration file that can be used for the WebLogic Portal managed servers. The local-storage values for the session cache and portal cache are set to false. The configuration file for the Coherence cache server can be the same as Example F–1, except the values for the local-storage system property in the session cache configuration section and portal cache configuration section must be set to true.

    2. Set the merged configuration file for the Coherence caches as the cache configuration for the Coherence grid JVMs. For example, in the following system property to locate the cache configuration file, portal-session-cache-config.xml represents the merged file:

      -Dtangosol.coherence.cacheconfig=D:\Coherence1212\coherence\temp\portal-session-cache-config.xml
      
  3. For the Portal Server:

    1. Use the merged configuration file for the WebLogic Portal managed server as the cache configuration file for the servers. For each application that will run on the WebLogic Portal managed server, copy the file to the application's APP-INF/classes directory.

    2. Add the system properties to disable local storage for the WebLogic Portal managed servers and optionally specify the cache configuration file. For example, you can add the following properties to your Coherence cache server startup script:

      -Dtangosol.coherence.weblogic.localstorage=false 
      -Dtangosol.coherence.distributed.localstorage=false 
      -Dtangosol.coherence.session.localstorage=false
      -Dtangosol.coherence.cacheconfig=D:\Coherence1212\coherence\temp\portal-session-cache-config.xml
      
  4. Copy the coherence.jar and coherence-wlp.jar files to the APP-INF/lib directory of your EAR file.

    See the deployment instructions in "Using Coherence*Web with WebLogic Portal—Main Steps" on page 10-3.

  5. Start the WebLogic Portal managed servers.

Getting Concurrent Access to the Same Session Instance

A cache delegator class is a class that is responsible for manipulating (getting, putting, or deleting) any data in the distributed cache. Use the <coherence-cache-delegator-class> context parameter in the web.xml file to specify the name of the class responsible for the data manipulation.

One of the possible values for the context parameter is the com.tangosol.coherence.servlet.LocalSessionCacheDelegator class. This class indicates that the local cache should be used for storing and retrieving the session instance before attempting to use the distributed cache. This delegator is useful for applications that require concurrent access to the same session instance.

Note:

This feature must be enabled when working with PeopleSoft applications.

To enable the LocalSessionCacheDelegator cache delegator, the following items must be configured in web.xml:

Example 2-1 illustrates a sample configuration for the cache delegator.

Example 2-1 Configuring Cache Delegator in the web.xml File

...
 <context-param>
    <param-name>coherence-cache-delegator-class</param-name>
    <param-value>com.tangosol.coherence.servlet.LocalSessionCacheDelegator
</param-value>
 </context-param>
 <context-param>
    <param-name>coherence-preserve-attributes</param-name>
    <param-value>true</param-value>
 </context-param>
 <context-param>
    <param-name>coherence-distributioncontroller-class</param-name>
    <param-value>com.tangosol.coherence.servlet.AbstractHttpSessionCollection$HybridController</param-value>
 </context-param>
...

Also, when using LocalSessionCacheDelegator as the cache delegator, you should not configure a near cache in the session-cache-config.xml file. This is because local session instances are used. Example 2-2 illustrates a sample session-cache-config.xml file without a near cache configuration. The scheme-name under cache-mapping has been changed from session-storage to session-distributed. The near-scheme section has been removed, but the local-scheme and distributed-scheme remain. This is noted in bold font in the example.

Example 2-2 session-cache-config.xml File Without a Near Cache Configuration

<?xml version="1.0"?>
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!--                                                                       -->
<!--      Cache configuration descriptor for Coherence*Web                 -->
<!--                                                                       -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->       
 
<cache-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xmlns="http://xmlns.oracle.com/coherence/coherence-cache-config"
              xsi:schemaLocation="http://xmlns.oracle.com/coherence/coherence-cache-config coherence-cache-config.xsd">
 
  <caching-scheme-mapping>
    <!--
    The clustered cache used to store Session management data.
    -->
    <cache-mapping>
      <cache-name>session-management</cache-name>
      <scheme-name>replicated</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store ServletContext attributes.
    -->
    <cache-mapping>
      <cache-name>servletcontext-storage</cache-name>
      <scheme-name>replicated</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store Session attributes.
    -->
<!--
session-near has been changed to session-distributed
-->
    <cache-mapping>
      <cache-name>session-storage</cache-name>
      <scheme-name>session-distributed</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store the "overflowing" (split-out due to size)
    Session attributes. Only used for the "Split" model.
    -->
    <cache-mapping>
      <cache-name>session-overflow</cache-name>
      <scheme-name>session-distributed</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store IDs of "recently departed" Sessions.
    -->
    <cache-mapping>
      <cache-name>session-death-certificates</cache-name>
      <scheme-name>session-certificate</scheme-name>
    </cache-mapping>
 
    <!--
    The local cache used to store Sessions that are not yet distributed (if
    there is a distribution controller).
    -->
    <cache-mapping>
      <cache-name>local-session-storage</cache-name>
      <scheme-name>unlimited-local</scheme-name>
    </cache-mapping>
 
    <!--
    The local cache used to store Session attributes that are not distributed
    (if there is a distribution controller or attributes are allowed to become
    local when serialization fails).
    -->
    <cache-mapping>
      <cache-name>local-attribute-storage</cache-name>
      <scheme-name>unlimited-local</scheme-name>
    </cache-mapping>
  </caching-scheme-mapping>
 
  <caching-schemes>
    <!--
    Replicated caching scheme used by the Session management and ServletContext
    attribute caches.
    -->
    <replicated-scheme>
      <scheme-name>replicated</scheme-name>
      <service-name>ReplicatedSessionsMisc</service-name>
      <request-timeout>30s</request-timeout>
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>unlimited-local</scheme-ref>
        </local-scheme>
      </backing-map-scheme>
      <autostart>true</autostart>
    </replicated-scheme>
 
<!--
The near-scheme section has been removed
-->
    <local-scheme>
      <scheme-name>session-front</scheme-name>
      <eviction-policy>HYBRID</eviction-policy>
      <high-units>1000</high-units>
      <low-units>750</low-units>
    </local-scheme>
 
    <distributed-scheme>
      <scheme-name>session-distributed</scheme-name>
      <scheme-ref>session-base</scheme-ref>
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>unlimited-local</scheme-ref>
        </local-scheme>
        <!-- for disk overflow use this backing scheme instead:
        <overflow-scheme>
          <scheme-ref>session-paging</scheme-ref>
        </overflow-scheme>
        -->
      </backing-map-scheme>
    </distributed-scheme>
 
    <!--
    Distributed caching scheme used by the "recently departed" Session cache.
    -->
    <distributed-scheme>
      <scheme-name>session-certificate</scheme-name>
      <scheme-ref>session-base</scheme-ref>
      <backing-map-scheme>
        <local-scheme>
          <eviction-policy>HYBRID</eviction-policy>
          <high-units>4000</high-units>
          <low-units>3000</low-units>
          <expiry-delay>86400</expiry-delay>
        </local-scheme>
      </backing-map-scheme>
    </distributed-scheme>
 
    <!--
    "Base" Distributed caching scheme that defines common configuration.
    -->
    <distributed-scheme>
      <scheme-name>session-base</scheme-name>
      <service-name>DistributedSessions</service-name>
      <thread-count>0</thread-count>
      <lease-granularity>member</lease-granularity>
      <local-storage system-property="tangosol.coherence.session.localstorage">false</local-storage>
      <partition-count>257</partition-count>
      <backup-count>1</backup-count>
      <backup-storage>
        <type>on-heap</type>
      </backup-storage>
      <request-timeout>30s</request-timeout>
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>unlimited-local</scheme-ref>
        </local-scheme>
      </backing-map-scheme>
      <autostart>true</autostart>
    </distributed-scheme>
 
    <!--
    Disk-based Session attribute overflow caching scheme.
    -->
    <overflow-scheme>
      <scheme-name>session-paging</scheme-name>
      <front-scheme>
        <local-scheme>
          <scheme-ref>session-front</scheme-ref>
        </local-scheme>
      </front-scheme>
      <back-scheme>
        <external-scheme>
          <bdb-store-manager/>
        </external-scheme>
      </back-scheme>
    </overflow-scheme>
 
    <!--
    Local caching scheme definition used by all caches that do not require an
    eviction policy.
    -->
    <local-scheme>
      <scheme-name>unlimited-local</scheme-name>
      <service-name>LocalSessionCache</service-name>
    </local-scheme>
 
    <!--
    Clustered invocation service that manages sticky session ownership.
    -->
    <invocation-scheme>
      <service-name>SessionOwnership</service-name>
      <request-timeout>30s</request-timeout>
    </invocation-scheme>
  </caching-schemes>
</cache-config>

Errors in the Merged Session Cache/Portal Cache File for Coherence*Web

There are syntax errors in the sample merged session-cache-config.xml and portal-cache-config.xml configuration file listed in the "Cache Configuration for WebLogic Portal and Oracle Coherence" appendix of the User's Guide for Oracle Coherence*Web. Please use the following sample file instead.

Example 2-3 Cache Configuration for WebLogic Portal Managed Server

<?xml version="1.0"?>
 
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
<!--                                                                       -->
<!--        Coherence BEA WebLogic Portal CacheProvider:                   -->
<!--                  Cache Configuration Descriptor                       -->
<!--                                                                       -->
<!--       (See http://e-docs.bea.com/wlp/docs81/perftune/apenB.html)      -->
<!-- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -->
 
<cache-config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xmlns="http://xmlns.oracle.com/coherence/coherence-cache-config"
              xsi:schemaLocation="http://xmlns.oracle.com/coherence/coherence-cache-config coherence-cache-config.xsd"> 
 
  <caching-scheme-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        adServiceCache
 
      Use:
        Used to store the results of searches for content rendered in a
        placeholder (ads). Used by the AdHelper to increase the speed of ad
        queries.
 
      Key:
        An ad query (java.lang.String).
 
      Value:
        An array of com.bea.p13n.content.Content objects.
      -->
      <cache-name>adServiceCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>32</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>5m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        binaryCache.[repository name]
 
      Use:
        Used to cache binary property values for the BEA Repository.
 
      Key:
        Node ID + property ID (java.lang.String).
 
      Value:
        A byte array associated with the binary property.
      -->
      <cache-name>binaryCache.*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>256</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        CategoryCache
 
      Use:
        Used to cache the root com.beasys.commerce.ebusiness.catalog.Category,
        the total number of categories in the product catalog (java.lang.Integer)
        and the com.beasys.commerce.ebusiness.catalog.service.category.CategoryInfo
        for each category.
 
      Key:
        The key for the root Category and the total number of categories is a
        java.lang.String. The key for a given CategoryInfo object is a
        com.beasys.commerce.ebusiness.catalog.CategoryKey.
 
      Value:
        The value for the root Category is a com.beasys.commerce.ebusiness.catalog.Category.
        The value for the total number of categories is a java.lang.Integer.
        The value for the category info objects is a
        com.beasys.commerce.ebusiness.catalog.service.category.CategoryInfo.
      -->
      <cache-name>CategoryCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1000</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        CategoryTreeCache
 
      Use:
        Used to cache portlet category trees.
 
      Key:
        A webapp name.
 
      Value:
        A CategoryTree object.
      -->
      <cache-name>CategoryTreeCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        communitiesEntityPropertyCache
 
      Use:
        Used to cache community membership capability information for users
        accessing communities.
 
      Key:
        A composite key of community definition ID and user name.
 
      Value:
        A java.util.Map of community membership capabilities.
      -->
      <cache-name>communitiesEntityPropertyCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        communitiesMemberActiveCache
 
      Use:
        Used to cache information about active status for community members.
 
      Key:
         A user name.
 
      Value:
        A java.lang.String representing the user's community member record
        active status.
      -->
      <cache-name>communitiesMemberActiveCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        complexProducerPortletHandleToIdCache
 
      Use:
        Used to cache the primary instance ID of portlets.
 
      Key:
        A remote portlet handle.
 
      Value:
        A remote portlet primary instance ID.
      -->
      <cache-name>complexProducerPortletHandleToIdCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1000</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        complexProducerPortletIdToDefinitionLabel
 
      Use:
        Used to cache the definition label of portlets.
 
      Key:
        A remote portlet primary instance ID.
 
      Value:
        A remote portlet definition label.
      -->
      <cache-name>complexProducerPortletIdToDefinitionLabel:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1000</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        credentialEntryCache
 
      Use:
        Used to cache credential vault entries with encrypted credential.
 
      Key:
        A com.bea.p13n.security.management.credentials.internal.CredentialEntryLocator.
 
      Value:
        A com.bea.p13n.security.management.credentials.CredentialEntry.
      -->
      <cache-name>credentialEntryCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        documentContentCache
 
      Use:
        Used to cache the document bytes for the DocumentManager. It is not
        used by the content repositories.
 
      Notes:
        Deprecated cache.
      -->
      <cache-name>documentContentCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        documentIdCache
 
      Use:
        Used to caches the results of document searches (ids only) for the
        DocumentManager. It is not used by the content repositories.
 
      Notes:
        Deprecated cache.
      -->
      <cache-name>documentIdCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        documentContentCache
 
      Use:
        Used to cache the results of document searches for the DocumentManager.
        It is not used by the content repositories.
 
      Notes:
        Deprecated cache.
      -->
      <cache-name>documentMetadataCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        discountAssocCache
 
      Use:
        Used to cache computed discount associations (applicable to individual
        customers or to customer segments).
 
      Key:
        A com.beasys.commerce.ebusiness.customer.CustomerPk.
 
      Value:
        A com.bea.commerce.ebusiness.discount.association.DiscountAssociation.
      -->
      <cache-name>discountAssocCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1h</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        discountCache
 
      Use:
        Used to cache computed discount definitions (applicable to individual
        customers or to customer segments).
 
      Key:
        A com.bea.commerce.ebusiness.discount.mgmt.QualificationDiscountId.
 
      Value:
        A java.util.Set of
        com.bea.commerce.ebusiness.discount.mgmt.QualificationDiscountDef
        objects.
      -->
      <cache-name>discountCache:*</cache-name>
      <scheme-name>portal-partitioned</scheme-name>
      <init-params>
        <init-param>
          <param-name>back-size-limit</param-name>
          <param-value>10</param-value>
        </init-param>
        <init-param>
          <param-name>back-expiry</param-name>
          <param-value>5m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        entityIdCache
 
      Use:
        Used to cache the numeric ids for entity property locators.
 
      Key:
        A com.bea.p13n.property.PropertyLocator.
 
      Value:
        An entity ID (java.lang.Long).
      -->
      <cache-name>entityIdCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        entityPropertyCache
 
      Use:
        Used to caches property values for users and groups.
 
      Key:
        A com.bea.p13n.property.PropertyLocator.
 
      Value:
        A com.bea.p13n.property.EntityPropertyCache.
      -->
      <cache-name>entityPropertyCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>500</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>10m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        globalDiscountAssocCache
 
      Use:
        Used to cache computed global discount associations. This is the set of
        discount associations that is applicable to all users.
 
      Key:
        A com.beasys.commerce.ebusiness.customer.CustomerPk.
 
      Value:
        A com.bea.commerce.ebusiness.discount.association.DiscountAssociation.
      -->
      <cache-name>globalDiscountAssocCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1h</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        globalDiscountCache
 
      Use:
        Used to cache computed global discount definitions. This is the set of
        global discounts that is applicable to all users.
 
      Key:
        A global discount set name (java.lang.String).
 
      Value:
        A java.util.Set of
        com.bea.commerce.ebusiness.discount.mgmt.QualificationDiscountDef
        objects.
      -->
      <cache-name>globalDiscountCache:*</cache-name>
      <scheme-name>portal-partitioned</scheme-name>
      <init-params>
        <init-param>
          <param-name>back-size-limit</param-name>
          <param-value>10</param-value>
        </init-param>
        <init-param>
          <param-name>back-expiry</param-name>
          <param-value>5m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        jndiNameCache
 
      Use:
        Used to cache the JNDI names of entity property managers and unified
        user profile managers.
 
      Key:
        An entity ID (java.lang.Long).
 
      Value:
        A JNDI name (java.lang.String).
      -->
      <cache-name>jndiNameCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        netuix.community.definition.cache
 
      Use:
        Used to cache community definitions.
 
      Key:
        A composite key of webapp name, portal path, and desktop path for a
        community.
 
      Value:
        A CommunityDefinition object.
      -->
      <cache-name>netuix.community.definition.cache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        netuix.community.id.to.path.cache
 
      Use:
        Used to cache community webapp names, desktop paths, and portal
        paths.
 
      Key:
        A CommunityDefinitionId.
 
      Value:
        The community webapp name, portal path, and desktop path.
      -->
      <cache-name>netuix.community.id.to.path.cache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        netuix.notification.global
 
      Use:
        Used to cache notifications targeted to a user, but not targeted to
        an individual web application.
 
      Key:
        A user name.
 
      Value:
        A java.util.List of Notification objects.
      -->
      <cache-name>netuix.notification.global:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        nodeCache.[repository name]
 
      Use:
        Used to cache BEA Repository nodes.
 
      Key:
        A node ID (java.lang.String).
 
      Value:
        A com.bea.content.Node.
      -->
      <cache-name>nodeCache.*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>50</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        nodePathCache.[repository name]
 
      Use:
        Used to cache a list of nodes for the BEA Repository based on a path.
 
      Key:
        A path (java.lang.String).
 
      Value:
        A com.bea.content.Node.
      -->
      <cache-name>nodePathCache.*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>50</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        p13nSecurityResourceCache
 
      Use:
        Used to cache the logical hierarchical elements of WLP security
        policies to speed performance of navigating the hierarchy.
 
      Key:
        A com.bea.p13n.entitlements.resource.P13nCachedResource.
 
      Value:
        A com.bea.p13n.entitlements.resource.P13nCachedResource.
      -->
      <cache-name>p13nSecurityResourceCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portalApp_Quiescence_Decision_Cache
 
      Use:
        When Maintenance Mode is enabled, used to cache the access decisions
        made per user per feature area of the Portal Administration Tool.
 
      Key:
        A com.bea.p13n.management.quiescence.QuiescenceDecisionCacheKey.
 
      Value:
        A com.bea.p13n.management.quiescence.QuiescenceDecision.
      -->
      <cache-name>portalApp_Quiescence_Decision_Cache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portalContentUriCache
 
      Use:
        Used to cache portal content URIs for a combination of webapp, portal,
        locale and optional user name.
 
      Key:
        A compound key consisting of the webapp, portal, locale and optional
        user name.
 
      Value:
        A portal content URI.
      -->
      <cache-name>portalContentUriCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>500</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>0</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portalControlTreeCache
 
      Use:
        Used to cache portal control trees for a combination of webapp,
        portal, desktop, locale and optional user name.
 
      Key:
        A compound key consisting of the webapp, portal, locale and optional
        user name.
 
      Value:
        A portal control tree.
      -->
      <cache-name>portalControlTreeCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>500</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>0</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        PortalFrameworkServiceLevelManager/[webapp]
 
      Use:
        Used to cache the state of a portlet instance, suspended or active.
 
      Key:
        A java.lang.String (identifies the portlet instance).
 
      Value:
        A com.bea.netuix.servicelevel.PortletServiceLevelDescription.
      -->
      <cache-name>PortalFrameworkServiceLevelManager/*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portalLayoutDefinitionCache
 
      Use:
        Used to cache LayoutDefinition objects.
 
      Key:
        A LayoutDefinitionId.
 
      Value:
        A LayoutDefinition.
      -->
      <cache-name>portalLayoutDefinitionCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portalLocalizationLocaleCache
 
      Use:
        Used to cache collections of language, character encoding, country
        and variant.
 
      Key:
        A java.lang.String.
 
      Value:
        A java.lang.Set of LocalizationLocale objects.
      -->
      <cache-name>portalLocalizationLocaleCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>500</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>0</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portalLocalizationResourceCache
 
      Use:
        Used to cache localization resources.
 
      Key:
        A com.bea.netuix.application.localization.identifier.LocalizationIntersectionId.
 
      Value:
        A com.bea.netuix.application.localization.definition.LocalizationResource.
      -->
      <cache-name>portalLocalizationResourceCache:*</cache-name>
      <scheme-name>portal-partitioned</scheme-name>
      <init-params>
        <init-param>
          <param-name>back-size-limit</param-name>
          <param-value>500</param-value>
        </init-param>
        <init-param>
          <param-name>back-expiry</param-name>
          <param-value>0</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portalMarkupDefinitionCache
 
      Use:
        Used to cache markup definition information.
 
      Key:
        A com.bea.netuix.application.identifier.MarkupDefinitionId.
 
      Value:
        A com.bea.netuix.application.definition.MarkupDefinition.
      -->
      <cache-name>portalMarkupDefinitionCache:*</cache-name>
      <scheme-name>portal-partitioned</scheme-name>
      <init-params>
        <init-param>
          <param-name>back-size-limit</param-name>
          <param-value>500</param-value>
        </init-param>
        <init-param>
          <param-name>back-expiry</param-name>
          <param-value>1m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portalThemeDefinitionCache
 
      Use:
        Used to cache ThemeDefinition objects.
 
      Key:
        A ThemeDefinitionId.
 
      Value:
        A ThemeDefinition.
      -->
      <cache-name>portalThemeDefinitionCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        PortletCategoryCache
 
      Use:
        Used to cache PortletCategoryDefinition objects.
 
      Key:
        A PortletCategoryDefinitionId.
 
      Value:
        A PortletCategoryDefinition.
      -->
      <cache-name>PortletCategoryCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portletControlTreeCache
 
      Use:
        Used to cache portlet control trees for floating portlets.
 
      Key:
        A composite key of portlet instance ID and locale.
 
      Value:
        A portlet control tree.
      -->
      <cache-name>portletControlTreeCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>500</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>0</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        portletPreferencesCache
 
      Use:
        Used to cache portlet preferences.
 
      Key:
        A portlet preference identifier.
 
      Value:
        A com.bea.portlet.prefs.PortletPreferences.
      -->
      <cache-name>portletPreferencesCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>500</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        ProductItemCache
 
      Use:
        Used to cache the total number of product items in the catalog as well
        as the product items themselves.
 
      Key:
        The key for the total number of product items is a java.lang.String.
        The key for the product items is a
        com.beasys.commerce.ebusiness.catalog.ProductItemKey.
 
      Value:
        The value for the total number of product items is a java.lang.Integer.
        The value for the product item is a
        com.beasys.commerce.ebusiness.catalog.ProductItem.
      -->
      <cache-name>ProductItemCache:*</cache-name>
      <scheme-name>portal-near</scheme-name>
      <init-params>
        <init-param>
          <param-name>back-expiry</param-name>
          <param-value>6h</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        profileTypeCache
 
      Use:
        Used to cache user profile types that are used to look up the
        appropriate user manager profile manager when retrieving a user
        profile.
 
      Key:
        A user name (java.lang.String).
 
      Value:
        A profile type (java.lang.String).
      -->
      <cache-name>profileTypeCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        propertyKeyIdCache
 
      Use:
        Used to cache the unique ID associated with a property set type,
        property set and property name combination.
 
      Key:
        A compound key consisting of the property set type, property set, and
        property name.
 
      Value:
        A java.lang.Long.
      -->
      <cache-name>propertyKeyIdCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        proxyPortletCache
 
      Use:
        Used to cache ProxyPortlets.
 
      Key:
        A java.lang.String representing the portlet instance ID.
 
      Value:
        Information from the consumer registry and about the proxy portlet
        instance.
      -->
      <cache-name>proxyPortletCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>100</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>0</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        registrationHandleCache
 
      Use:
        Used to cache whether or not a particular WSRP registration handle is
        valid.
 
      Key:
        A WSRP consumer registration handle.
 
      Value:
        A java.lang.Boolean.
      -->
      <cache-name>registrationHandleCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        remoteProducerInfoCache
 
      Use:
        Used to cache the metadata for WSRP producers added to a WSRP consumer
        application.
 
      Key:
        The name of the consumer web application (java.lang.String).
 
      Value:
        A java.util.HashMap containing WSRP producer metadata. This map is
        keyed by the producer handle of each producer.
      -->
      <cache-name>remoteProducerInfoCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        repo.explicitPropertyCache
 
      Use:
        Used to cache explicit property information for all WLP repositories.
 
      Key:
        The name of the repository (java.lang.String)
 
      Value:
        A java.util.Collection of repository property definition information
        for explicit properties in that WLP repository.
      -->
      <cache-name>repo.explicitPropertyCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        repo.nodeIdCache.[repository name]
 
      Use:
        Used to cache node information for a specific WLP repository
        instance.
 
      Key:
        A node ID.
 
      Value:
        A repository node data object.
      -->
      <cache-name>repo.nodeIdCache.*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        repo.nodePathCache.[repository name]
 
      Use:
        Used to cache node information for a specific WLP repository
        instance.
 
      Key:
        A node path.
 
      Value:
        A repository node data object.
      -->
      <cache-name>repo.nodePathCache.*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        repo.typeBinaryCache.[repository name]
 
      Use:
        Used to cache node binary property information for a specific WLP
        repository instance.
 
      Key:
        A composite key of node UID and binary property UID.
 
      Value:
        A byte array representing property information.
      -->
      <cache-name>repo.typeBinaryCache.*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        repo.typeIdCache.[repository name]
 
      Use:
        Used to cache node type information for a specific WLP repository
        instance.
 
      Key:
        A type ID.
 
      Value:
        A repository type data object.
      -->
      <cache-name>repo.typeIdCache.*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        repo.typeNameCache.[repository name]
 
      Use:
        Used to cache node type information for a specific WLP repository
        instance.
 
      Key:
        A type name.
 
      Value:
        A repository type data object.
      -->
      <cache-name>repo.typeNameCache.*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        repositoryConfigCache
 
      Use:
        Used to cache repository configuration information.
 
      Key:
        A repository name.
 
      Value:
        A RepositoryConfig.
      -->
      <cache-name>repositoryConfigCache:*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        searchCache
 
      Use:
        Used to cache an array of IDs for nodes that satisfy a content search.
 
      Key:
        A com.beasys.commerce.foundation.expression.Search.
 
      Value:
        An array of node IDs that satisfy the query.
      -->
      <cache-name>searchCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>20</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1m</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        typeCache.[repository name]
 
      Use:
        Used to cache type information.
 
      Key:
        An ObjectClass ID.
 
      Value:
        An ObjectClass.
      -->
      <cache-name>typeCache.*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        typeNameCache.[repository name]
 
      Use:
        Used to cache type ID information.
 
      Key:
        An ObjectClass name.
 
      Value:
        An ObjectClass ID.
      -->
      <cache-name>typeNameCache.*</cache-name>
      <scheme-name>portal-replicated</scheme-name>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        versionCache
 
      Use:
        Used to cache individual versions of a Node in the BEA Content
        Repository.
 
      Key:
        A com.bea.content.ID.
 
      Value:
        A com.bea.content.virtual.version.Version.
      -->
      <cache-name>versionCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        virtualNodeCache
 
      Use:
        Used to cache a node from a repository that has versioning support
        enabled.
 
      Key:
        A com.bea.content.ID.
 
      Value:
        A com.bea.content.virtual.VirtualNode.
      -->
      <cache-name>virtualNodeCache:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        wlp.urlCompression.compressed
 
      Use:
        Used to map compressed URL IDs to the expanded URL.
 
      Key:
        A numeric compressed URL ID.
 
      Value:
        An expanded URL.
      -->
      <cache-name>wlp.urlCompression.compressed:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Cache:
        wlp.urlCompression.expanded
 
      Use:
        Used to map expanded URLs to compressed URL IDs.
 
      Key:
        An expanded URL.
 
      Value:
        A compressed URL ID.
      -->
      <cache-name>wlp.urlCompression.expanded:*</cache-name>
      <scheme-name>portal-local</scheme-name>
      <init-params>
        <init-param>
          <param-name>local-size-limit</param-name>
          <param-value>1024</param-value>
        </init-param>
        <init-param>
          <param-name>local-expiry</param-name>
          <param-value>1d</param-value>
        </init-param>
      </init-params>
    </cache-mapping>
 
    <cache-mapping>
      <!--
      Default cache mapping.
      -->
      <cache-name>*</cache-name>
      <scheme-name>portal-local</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store Session management data.
    -->
    <cache-mapping>
      <cache-name>session-management</cache-name>
      <scheme-name>replicated</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store ServletContext attributes.
    -->
    <cache-mapping>
      <cache-name>servletcontext-storage</cache-name>
      <scheme-name>replicated</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store Session attributes.
    -->
    <cache-mapping>
      <cache-name>session-storage</cache-name>
      <scheme-name>session-near</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store the "overflowing" (split-out due to size)
    Session attributes. Only used for the "Split" model.
    -->
    <cache-mapping>
      <cache-name>session-overflow</cache-name>
      <scheme-name>session-distributed</scheme-name>
    </cache-mapping>
 
    <!--
    The clustered cache used to store IDs of "recently departed" Sessions.
    -->
    <cache-mapping>
      <cache-name>session-death-certificates</cache-name>
      <scheme-name>session-certificate</scheme-name>
    </cache-mapping>
 
    <!--
    The local cache used to store Sessions that are not yet distributed (if
    there is a distribution controller).
    -->
    <cache-mapping>
      <cache-name>local-session-storage</cache-name>
      <scheme-name>unlimited-local</scheme-name>
    </cache-mapping>
 
    <!--
    The local cache used to store Session attributes that are not distributed
    (if there is a distribution controller or attributes are allowed to become
    local when serialization fails).
    -->
    <cache-mapping>
      <cache-name>local-attribute-storage</cache-name>
      <scheme-name>unlimited-local</scheme-name>
    </cache-mapping>
 
  </caching-scheme-mapping>
 
 
  <caching-schemes>
 
    <local-scheme>
      <!--
      Cache scheme definition used by all local caches that require size
      limitation and/or expiry eviction policies.
      -->
      <scheme-name>portal-local</scheme-name>
      <service-name>PortalLocalCache</service-name>
 
      <eviction-policy>HYBRID</eviction-policy>
      <high-units>{local-size-limit 100}</high-units>
      <expiry-delay>{local-expiry 1h}</expiry-delay>
    </local-scheme>
 
    <local-scheme>
      <!--
      Cache scheme definition used by all near cache front maps that require
      size limitation and/or expiry eviction policies.
      -->
      <scheme-name>portal-front</scheme-name>
      <service-name>PortalLocalCache</service-name>
 
      <eviction-policy>HYBRID</eviction-policy>
      <high-units>{front-size-limit 100}</high-units>
      <expiry-delay>{front-expiry 0}</expiry-delay>
    </local-scheme>
 
    <local-scheme>
      <!--
      Cache scheme definition used by all partitioned cache backing maps that
      require size limitation and/or expiry eviction policies.
      -->
      <scheme-name>portal-back</scheme-name>
      <service-name>PortalLocalCache</service-name>
 
      <eviction-policy>HYBRID</eviction-policy>
      <high-units>{back-size-limit 1000}</high-units>
      <expiry-delay>{back-expiry 1h}</expiry-delay>
    </local-scheme>
 
    <replicated-scheme>
      <!--
      Replicated caching scheme.
      -->
      <scheme-name>portal-replicated</scheme-name>
      <service-name>PortalReplicatedCache</service-name>
 
      <serializer>
        <instance>
          <class-name>com.tangosol.io.DefaultSerializer</class-name>
        </instance>
      </serializer>
 
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>portal-back</scheme-ref>
        </local-scheme>
      </backing-map-scheme>
 
      <autostart>true</autostart>
    </replicated-scheme>
 
    <distributed-scheme>
      <!--
      Partitioned caching scheme.
      -->
      <scheme-name>portal-partitioned</scheme-name>
      <service-name>PortalDistributedCache</service-name>
 
      <serializer>
        <instance>
          <class-name>com.tangosol.io.DefaultSerializer</class-name>
        </instance>
      </serializer>
 
      <local-storage system-property="tangosol.coherence.weblogic.localstorage">false</local-storage>
 
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>portal-back</scheme-ref>
        </local-scheme>
      </backing-map-scheme>
 
      <autostart>true</autostart>
    </distributed-scheme>
 
    <near-scheme>
      <!--
      Near caching scheme.
      -->
      <scheme-name>portal-near</scheme-name>
 
      <front-scheme>
        <local-scheme>
          <scheme-ref>portal-front</scheme-ref>
        </local-scheme>
      </front-scheme>
 
      <back-scheme>
        <distributed-scheme>
          <scheme-ref>portal-partitioned</scheme-ref>
        </distributed-scheme>
      </back-scheme>
 
      <invalidation-strategy>{near-strategy present}</invalidation-strategy>
    </near-scheme>
 
    <invocation-scheme>
      <!--
      Invocation service scheme.
      -->
      <scheme-name>portal-invocation-service</scheme-name>
      <service-name>PortalInvocationService</service-name>
 
      <serializer>
        <instance>
          <class-name>com.tangosol.io.DefaultSerializer</class-name>
        </instance>
      </serializer>
    </invocation-scheme>
 
 
    <!--
    Replicated caching scheme used by the Session management and ServletContext
    attribute caches.
    -->
    <replicated-scheme>
      <scheme-name>replicated</scheme-name>
      <service-name>ReplicatedSessionsMisc</service-name>
      <request-timeout>30s</request-timeout>
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>unlimited-local</scheme-ref>
        </local-scheme>
      </backing-map-scheme>
      <autostart>true</autostart>
    </replicated-scheme>
 
    <!--
    Near caching scheme used by the Session attribute cache. The front cache
    uses a Local caching scheme and the back cache uses a Distributed caching
    scheme.
    -->
    <near-scheme>
      <scheme-name>session-near</scheme-name>
      <front-scheme>
        <local-scheme>
          <scheme-ref>session-front</scheme-ref>
        </local-scheme>
      </front-scheme>
      <back-scheme>
        <distributed-scheme>
          <scheme-ref>session-distributed</scheme-ref>
        </distributed-scheme>
      </back-scheme>
      <invalidation-strategy>present</invalidation-strategy>
    </near-scheme>
 
    <local-scheme>
      <scheme-name>session-front</scheme-name>
      <eviction-policy>HYBRID</eviction-policy>
      <high-units>1000</high-units>
      <low-units>750</low-units>
    </local-scheme>
 
    <distributed-scheme>
      <scheme-name>session-distributed</scheme-name>
      <scheme-ref>session-base</scheme-ref>
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>unlimited-local</scheme-ref>
        </local-scheme>
        <!-- for disk overflow use this backing scheme instead:
        <overflow-scheme>
          <scheme-ref>session-paging</scheme-ref>
        </overflow-scheme>
        -->
      </backing-map-scheme>
    </distributed-scheme>
 
    <!--
    Distributed caching scheme used by the "recently departed" Session cache.
    -->
    <distributed-scheme>
      <scheme-name>session-certificate</scheme-name>
      <scheme-ref>session-base</scheme-ref>
      <backing-map-scheme>
        <local-scheme>
          <eviction-policy>HYBRID</eviction-policy>
          <high-units>4000</high-units>
          <low-units>3000</low-units>
          <expiry-delay>86400</expiry-delay>
        </local-scheme>
      </backing-map-scheme>
    </distributed-scheme>
 
    <!--
    "Base" Distributed caching scheme that defines common configuration.
    -->
    <distributed-scheme>
      <scheme-name>session-base</scheme-name>
      <service-name>DistributedSessions</service-name>
      <thread-count>0</thread-count>
      <lease-granularity>member</lease-granularity>
      <local-storage system-property="tangosol.coherence.session.localstorage">false</local-storage>
      <partition-count>257</partition-count>
      <backup-count>1</backup-count>
      <backup-storage>
        <type>on-heap</type>
      </backup-storage>
      <request-timeout>30s</request-timeout>
      <backing-map-scheme>
        <local-scheme>
          <scheme-ref>unlimited-local</scheme-ref>
        </local-scheme>
      </backing-map-scheme>
      <autostart>true</autostart>
    </distributed-scheme>
 
    <!--
    Disk-based Session attribute overflow caching scheme.
    -->
    <overflow-scheme>
      <scheme-name>session-paging</scheme-name>
      <front-scheme>
        <local-scheme>
          <scheme-ref>session-front</scheme-ref>
        </local-scheme>
      </front-scheme>
      <back-scheme>
        <external-scheme>
          <bdb-store-manager/>
        </external-scheme>
      </back-scheme>
    </overflow-scheme>
 
    <!--
    Local caching scheme definition used by all caches that do not require an
    eviction policy.
    -->
    <local-scheme>
      <scheme-name>unlimited-local</scheme-name>
      <service-name>LocalSessionCache</service-name>
    </local-scheme>
 
    <!--
    Clustered invocation service that manages sticky session ownership.
    -->
    <invocation-scheme>
      <service-name>SessionOwnership</service-name>
      <request-timeout>30s</request-timeout>
    </invocation-scheme>
 
  </caching-schemes>
</cache-config>