Aaron, Just noticed: if we put the CacheKey classes in the Remote Cache Server classpath, everything works fine.
So, the Remote Cache Server holds as byte arrays only the CacheValues? And for the CacheKeys the class is still needed in the classpath? Emilia -----Original Message----- From: Emilia Ipate Sent: Wednesday, June 20, 2007 9:41 AM To: 'JCS Users List' Subject: RE: jcs 1.2.7.9.2 remote cache server UnmarshalException Hi, Aaron! Thank you for having a look at this problem. Below, you'll see the cache.ccf files and I'm really curios if they are wrong. 1. Here is the Local cache.ccf: # Config file created by CreateCacheConfigFiles Ant Task #=====================ENVIRONMENT===================== # Short Description:WIN # Long Description :Windows Development Environment #=================================================== # DEFAULT CACHE REGION # sets the default aux value for any non configured caches jcs.default=RC jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttribut es jcs.default.cacheattributes.MaxObjects=100 jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory .lru.LRUMemoryCache jcs.default.elementattributes=org.apache.jcs.engine.ElementAttributes jcs.default.elementattributes.IdleTime=1000 jcs.default.elementattributes.IsEternal=false jcs.default.elementattributes.IsLateral=true jcs.default.elementattributes.IsRemote=true jcs.default.elementattributes.IsSpool=true jcs.default.elementattributes.MaxLifeSeconds=600 # Cache Region accountDetailCache jcs.region.accountDetailCache=RC jcs.region.accountDetailCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.accountDetailCache.cacheattributes.MaxObjects=750 jcs.region.accountDetailCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.accountDetailCache.cacheattributes.ShrinkerIntervalSeconds=30 0 jcs.region.accountDetailCache.cacheattributes.UseMemoryShrinker=true jcs.region.accountDetailCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.accountDetailCache.elementattributes.IdleTime=1000 jcs.region.accountDetailCache.elementattributes.IsEternal=false jcs.region.accountDetailCache.elementattributes.IsLateral=true jcs.region.accountDetailCache.elementattributes.IsRemote=true jcs.region.accountDetailCache.elementattributes.IsSpool=true jcs.region.accountDetailCache.elementattributes.MaxLifeSeconds=1800 # Cache Region accountSettingsCache jcs.region.accountSettingsCache=RC jcs.region.accountSettingsCache.cacheattributes=org.apache.jcs.engine.Co mpositeCacheAttributes jcs.region.accountSettingsCache.cacheattributes.MaxObjects=750 jcs.region.accountSettingsCache.cacheattributes.MemoryCacheName=org.apac he.jcs.engine.memory.lru.LRUMemoryCache jcs.region.accountSettingsCache.cacheattributes.ShrinkerIntervalSeconds= 300 jcs.region.accountSettingsCache.cacheattributes.UseMemoryShrinker=true jcs.region.accountSettingsCache.elementattributes=org.apache.jcs.engine. ElementAttributes jcs.region.accountSettingsCache.elementattributes.IdleTime=1000 jcs.region.accountSettingsCache.elementattributes.IsEternal=false jcs.region.accountSettingsCache.elementattributes.IsLateral=true jcs.region.accountSettingsCache.elementattributes.IsRemote=true jcs.region.accountSettingsCache.elementattributes.IsSpool=true jcs.region.accountSettingsCache.elementattributes.MaxLifeSeconds=1800 # Cache Region dbSubscriptionsCache jcs.region.dbSubscriptionsCache=RC jcs.region.dbSubscriptionsCache.cacheattributes=org.apache.jcs.engine.Co mpositeCacheAttributes jcs.region.dbSubscriptionsCache.cacheattributes.MaxObjects=1000 jcs.region.dbSubscriptionsCache.cacheattributes.MemoryCacheName=org.apac he.jcs.engine.memory.lru.LRUMemoryCache jcs.region.dbSubscriptionsCache.elementattributes=org.apache.jcs.engine. ElementAttributes jcs.region.dbSubscriptionsCache.elementattributes.IdleTime=1000 jcs.region.dbSubscriptionsCache.elementattributes.IsEternal=false jcs.region.dbSubscriptionsCache.elementattributes.IsLateral=true jcs.region.dbSubscriptionsCache.elementattributes.IsRemote=true jcs.region.dbSubscriptionsCache.elementattributes.IsSpool=true jcs.region.dbSubscriptionsCache.elementattributes.MaxLifeSeconds=43200 # Cache Region genericObjectCache jcs.region.genericObjectCache=RC jcs.region.genericObjectCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.genericObjectCache.cacheattributes.MaxObjects=1000 jcs.region.genericObjectCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.genericObjectCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.genericObjectCache.elementattributes.IdleTime=1000 jcs.region.genericObjectCache.elementattributes.IsEternal=false jcs.region.genericObjectCache.elementattributes.IsLateral=true jcs.region.genericObjectCache.elementattributes.IsRemote=true jcs.region.genericObjectCache.elementattributes.IsSpool=true jcs.region.genericObjectCache.elementattributes.MaxLifeSeconds=604800 # Cache Region overlapReportCache jcs.region.overlapReportCache=RC jcs.region.overlapReportCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.overlapReportCache.cacheattributes.MaxObjects=500 jcs.region.overlapReportCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.overlapReportCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.overlapReportCache.elementattributes.IdleTime=1000 jcs.region.overlapReportCache.elementattributes.IsEternal=false jcs.region.overlapReportCache.elementattributes.IsLateral=true jcs.region.overlapReportCache.elementattributes.IsRemote=true jcs.region.overlapReportCache.elementattributes.IsSpool=true jcs.region.overlapReportCache.elementattributes.MaxLifeSeconds=1209600 # Cache Region priceCache jcs.region.priceCache=RC jcs.region.priceCache.cacheattributes=org.apache.jcs.engine.CompositeCac heAttributes jcs.region.priceCache.cacheattributes.MaxObjects=5000 jcs.region.priceCache.cacheattributes.MemoryCacheName=org.apache.jcs.eng ine.memory.lru.LRUMemoryCache jcs.region.priceCache.cacheattributes.ShrinkerIntervalSeconds=300 jcs.region.priceCache.cacheattributes.UseMemoryShrinker=true jcs.region.priceCache.elementattributes=org.apache.jcs.engine.ElementAtt ributes jcs.region.priceCache.elementattributes.IdleTime=1000 jcs.region.priceCache.elementattributes.IsEternal=false jcs.region.priceCache.elementattributes.IsLateral=true jcs.region.priceCache.elementattributes.IsRemote=true jcs.region.priceCache.elementattributes.IsSpool=true jcs.region.priceCache.elementattributes.MaxLifeSeconds=7200 # Cache Region publicationScheduleCache jcs.region.publicationScheduleCache=RC jcs.region.publicationScheduleCache.cacheattributes=org.apache.jcs.engin e.CompositeCacheAttributes jcs.region.publicationScheduleCache.cacheattributes.MaxObjects=4000 jcs.region.publicationScheduleCache.cacheattributes.MemoryCacheName=org. apache.jcs.engine.memory.lru.LRUMemoryCache jcs.region.publicationScheduleCache.cacheattributes.ShrinkerIntervalSeco nds=300 jcs.region.publicationScheduleCache.cacheattributes.UseMemoryShrinker=tr ue jcs.region.publicationScheduleCache.elementattributes=org.apache.jcs.eng ine.ElementAttributes jcs.region.publicationScheduleCache.elementattributes.IdleTime=1000 jcs.region.publicationScheduleCache.elementattributes.IsEternal=false jcs.region.publicationScheduleCache.elementattributes.IsLateral=true jcs.region.publicationScheduleCache.elementattributes.IsRemote=true jcs.region.publicationScheduleCache.elementattributes.IsSpool=true jcs.region.publicationScheduleCache.elementattributes.MaxLifeSeconds=100 0 # Cache Region unwantedWordsCache jcs.region.unwantedWordsCache=DC jcs.region.unwantedWordsCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.unwantedWordsCache.cacheattributes.MaxObjects=1000 jcs.region.unwantedWordsCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.unwantedWordsCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.unwantedWordsCache.elementattributes.IdleTime=1000 jcs.region.unwantedWordsCache.elementattributes.IsEternal=false jcs.region.unwantedWordsCache.elementattributes.IsLateral=true jcs.region.unwantedWordsCache.elementattributes.IsRemote=false jcs.region.unwantedWordsCache.elementattributes.IsSpool=true jcs.region.unwantedWordsCache.elementattributes.MaxLifeSeconds=1000000 # Primary Disk Cache-- faster than the rest because of memory key storage jcs.auxiliary.DC.attributes.DiskPath=logs/rafNA jcs.auxiliary.DC.attributes.MaxKeySize=500000 jcs.auxiliary.DC.attributes.MaxPurgatorySize=100000 jcs.auxiliary.DC.attributes.MaxRecycleBinSize=50000 jcs.auxiliary.DC.attributes.OptimizeAtRemoveCount=-1 jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.Indexe dDiskCacheAttributes jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheF actory # Remote Server definition jcs.auxiliary.RC.attributes.FailoverServers=localhost:1101,localhost:110 2 jcs.auxiliary.RC.attributes.GetOnly=false jcs.auxiliary.RC.attributes.GetTimeoutMillis=-1 jcs.auxiliary.RC.attributes.LocalPort=1201 jcs.auxiliary.RC.attributes.RemoveUponRemotePut=true jcs.auxiliary.RC.attributes.RmiSocketFactoryTimeoutMillis=5000 jcs.auxiliary.RC.attributes.ThreadPoolName=remote_cache_client jcs.auxiliary.RC.attributes=org.apache.jcs.auxiliary.remote.RemoteCacheA ttributes jcs.auxiliary.RC=org.apache.jcs.auxiliary.remote.RemoteCacheFactory # Default Thread pool definition thread_pool.default.keepAliveTime=350000 thread_pool.default.boundarySize=2000 thread_pool.default.minimumPoolSize=4 thread_pool.default.whenBlockedPolicy=RUN thread_pool.default.startUpSize=4 thread_pool.default.maximumPoolSize=150 # Remote Thread pool definition thread_pool.remote_cache_client.keepAliveTime=350000 thread_pool.remote_cache_client.boundarySize=75 thread_pool.remote_cache_client.startUpSize=4 thread_pool.remote_cache_client.maximumPoolSize=150 thread_pool.remote_cache_client.whenBlockedPolicy=RUN thread_pool.remote_cache_client.minimumPoolSize=25 2. Here is the cache.ccf for the Primary Remote Cache Server: # Config file created by Custom Ant Task #=====================ENVIRONMENT===================== # Short Description:WIN # Long Description :WIN Environment #=================================================== # Registry used to register and provide the IRmiCacheService service. registry.host=localhost registry.port=1101 remote.cache.service.port=1101 remote.cluster.LocalClusterConsistency=true # DEFAULT CACHE REGION # sets the default aux value for any non configured caches jcs.default=DC,RCluster jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttribut es jcs.default.cacheattributes.MaxObjects=100 jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory .lru.LRUMemoryCache jcs.default.elementattributes=org.apache.jcs.engine.ElementAttributes jcs.default.elementattributes.IdleTime=1000 jcs.default.elementattributes.IsEternal=false jcs.default.elementattributes.IsLateral=true jcs.default.elementattributes.IsRemote=true jcs.default.elementattributes.IsSpool=true jcs.default.elementattributes.MaxLifeSeconds=600 # Cache Region accountDetailCache jcs.region.accountDetailCache=DC,RCluster jcs.region.accountDetailCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.accountDetailCache.cacheattributes.MaxObjects=750 jcs.region.accountDetailCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.accountDetailCache.cacheattributes.ShrinkerIntervalSeconds=30 0 jcs.region.accountDetailCache.cacheattributes.UseMemoryShrinker=true jcs.region.accountDetailCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.accountDetailCache.elementattributes.IdleTime=1000 jcs.region.accountDetailCache.elementattributes.IsEternal=false jcs.region.accountDetailCache.elementattributes.IsLateral=true jcs.region.accountDetailCache.elementattributes.IsRemote=true jcs.region.accountDetailCache.elementattributes.IsSpool=true jcs.region.accountDetailCache.elementattributes.MaxLifeSeconds=1800 # Cache Region accountSettingsCache jcs.region.accountSettingsCache=DC,RCluster jcs.region.accountSettingsCache.cacheattributes=org.apache.jcs.engine.Co mpositeCacheAttributes jcs.region.accountSettingsCache.cacheattributes.MaxObjects=750 jcs.region.accountSettingsCache.cacheattributes.MemoryCacheName=org.apac he.jcs.engine.memory.lru.LRUMemoryCache jcs.region.accountSettingsCache.cacheattributes.ShrinkerIntervalSeconds= 300 jcs.region.accountSettingsCache.cacheattributes.UseMemoryShrinker=true jcs.region.accountSettingsCache.elementattributes=org.apache.jcs.engine. ElementAttributes jcs.region.accountSettingsCache.elementattributes.IdleTime=1000 jcs.region.accountSettingsCache.elementattributes.IsEternal=false jcs.region.accountSettingsCache.elementattributes.IsLateral=true jcs.region.accountSettingsCache.elementattributes.IsRemote=true jcs.region.accountSettingsCache.elementattributes.IsSpool=true jcs.region.accountSettingsCache.elementattributes.MaxLifeSeconds=1800 # Cache Region dbSubscriptionsCache jcs.region.dbSubscriptionsCache=DC,RCluster jcs.region.dbSubscriptionsCache.cacheattributes=org.apache.jcs.engine.Co mpositeCacheAttributes jcs.region.dbSubscriptionsCache.cacheattributes.MaxObjects=1000 jcs.region.dbSubscriptionsCache.cacheattributes.MemoryCacheName=org.apac he.jcs.engine.memory.lru.LRUMemoryCache jcs.region.dbSubscriptionsCache.elementattributes=org.apache.jcs.engine. ElementAttributes jcs.region.dbSubscriptionsCache.elementattributes.IdleTime=1000 jcs.region.dbSubscriptionsCache.elementattributes.IsEternal=false jcs.region.dbSubscriptionsCache.elementattributes.IsLateral=true jcs.region.dbSubscriptionsCache.elementattributes.IsRemote=true jcs.region.dbSubscriptionsCache.elementattributes.IsSpool=true jcs.region.dbSubscriptionsCache.elementattributes.MaxLifeSeconds=43200 # Cache Region genericObjectCache jcs.region.genericObjectCache=DC,RCluster jcs.region.genericObjectCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.genericObjectCache.cacheattributes.MaxObjects=1000 jcs.region.genericObjectCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.genericObjectCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.genericObjectCache.elementattributes.IdleTime=1000 jcs.region.genericObjectCache.elementattributes.IsEternal=false jcs.region.genericObjectCache.elementattributes.IsLateral=true jcs.region.genericObjectCache.elementattributes.IsRemote=true jcs.region.genericObjectCache.elementattributes.IsSpool=true jcs.region.genericObjectCache.elementattributes.MaxLifeSeconds=604800 # Cache Region overlapReportCache jcs.region.overlapReportCache=DC,RCluster jcs.region.overlapReportCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.overlapReportCache.cacheattributes.MaxObjects=500 jcs.region.overlapReportCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.overlapReportCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.overlapReportCache.elementattributes.IdleTime=1000 jcs.region.overlapReportCache.elementattributes.IsEternal=false jcs.region.overlapReportCache.elementattributes.IsLateral=true jcs.region.overlapReportCache.elementattributes.IsRemote=true jcs.region.overlapReportCache.elementattributes.IsSpool=true jcs.region.overlapReportCache.elementattributes.MaxLifeSeconds=1209600 # Cache Region priceCache jcs.region.priceCache=DC,RCluster jcs.region.priceCache.cacheattributes=org.apache.jcs.engine.CompositeCac heAttributes jcs.region.priceCache.cacheattributes.MaxObjects=5000 jcs.region.priceCache.cacheattributes.MemoryCacheName=org.apache.jcs.eng ine.memory.lru.LRUMemoryCache jcs.region.priceCache.cacheattributes.ShrinkerIntervalSeconds=300 jcs.region.priceCache.cacheattributes.UseMemoryShrinker=true jcs.region.priceCache.elementattributes=org.apache.jcs.engine.ElementAtt ributes jcs.region.priceCache.elementattributes.IdleTime=1000 jcs.region.priceCache.elementattributes.IsEternal=false jcs.region.priceCache.elementattributes.IsLateral=true jcs.region.priceCache.elementattributes.IsRemote=true jcs.region.priceCache.elementattributes.IsSpool=true jcs.region.priceCache.elementattributes.MaxLifeSeconds=7200 # Cache Region publicationScheduleCache jcs.region.publicationScheduleCache=DC,RCluster jcs.region.publicationScheduleCache.cacheattributes=org.apache.jcs.engin e.CompositeCacheAttributes jcs.region.publicationScheduleCache.cacheattributes.MaxObjects=4000 jcs.region.publicationScheduleCache.cacheattributes.MemoryCacheName=org. apache.jcs.engine.memory.lru.LRUMemoryCache jcs.region.publicationScheduleCache.cacheattributes.ShrinkerIntervalSeco nds=300 jcs.region.publicationScheduleCache.cacheattributes.UseMemoryShrinker=tr ue jcs.region.publicationScheduleCache.elementattributes=org.apache.jcs.eng ine.ElementAttributes jcs.region.publicationScheduleCache.elementattributes.IdleTime=1000 jcs.region.publicationScheduleCache.elementattributes.IsEternal=false jcs.region.publicationScheduleCache.elementattributes.IsLateral=true jcs.region.publicationScheduleCache.elementattributes.IsRemote=true jcs.region.publicationScheduleCache.elementattributes.IsSpool=true jcs.region.publicationScheduleCache.elementattributes.MaxLifeSeconds=100 0 # Cache Region unwantedWordsCache # Cache region is only used local (notremote setting) # Primary Disk Cache-- faster than the rest because of memory key storage jcs.auxiliary.DC.attributes.DiskPath=logs/rafNA jcs.auxiliary.DC.attributes.MaxKeySize=500000 jcs.auxiliary.DC.attributes.MaxPurgatorySize=100000 jcs.auxiliary.DC.attributes.MaxRecycleBinSize=50000 jcs.auxiliary.DC.attributes.OptimizeAtRemoveCount=-1 jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.Indexe dDiskCacheAttributes jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheF actory jcs.auxiliary.RCluster.attributes.ClusterServers=localhost:1102 jcs.auxiliary.RCluster.attributes.GetOnly=false jcs.auxiliary.RCluster.attributes.LocalClusterConsistency=true jcs.auxiliary.RCluster.attributes.RemoteTypeName=CLUSTER jcs.auxiliary.RCluster.attributes.RemoveUponRemotePut=false jcs.auxiliary.RCluster.attributes=org.apache.jcs.auxiliary.remote.Remote CacheAttributes jcs.auxiliary.RCluster=org.apache.jcs.auxiliary.remote.RemoteCacheFactor y 3. Here is the cache.ccf for the Failover Remote Cache Server: # Config file created by Custom Ant Task #=====================ENVIRONMENT===================== # Short Description:WIN # Long Description :WIN Environment #=================================================== # Registry used to register and provide the IRmiCacheService service. registry.host=localhost registry.port=1102 remote.cache.service.port=1102 remote.cluster.LocalClusterConsistency=true # DEFAULT CACHE REGION # sets the default aux value for any non configured caches jcs.default=DC,RCluster jcs.default.cacheattributes=org.apache.jcs.engine.CompositeCacheAttribut es jcs.default.cacheattributes.MaxObjects=100 jcs.default.cacheattributes.MemoryCacheName=org.apache.jcs.engine.memory .lru.LRUMemoryCache jcs.default.elementattributes=org.apache.jcs.engine.ElementAttributes jcs.default.elementattributes.IdleTime=1000 jcs.default.elementattributes.IsEternal=false jcs.default.elementattributes.IsLateral=true jcs.default.elementattributes.IsRemote=true jcs.default.elementattributes.IsSpool=true jcs.default.elementattributes.MaxLifeSeconds=600 # Cache Region accountDetailCache jcs.region.accountDetailCache=DC,RCluster jcs.region.accountDetailCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.accountDetailCache.cacheattributes.MaxObjects=750 jcs.region.accountDetailCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.accountDetailCache.cacheattributes.ShrinkerIntervalSeconds=30 0 jcs.region.accountDetailCache.cacheattributes.UseMemoryShrinker=true jcs.region.accountDetailCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.accountDetailCache.elementattributes.IdleTime=1000 jcs.region.accountDetailCache.elementattributes.IsEternal=false jcs.region.accountDetailCache.elementattributes.IsLateral=true jcs.region.accountDetailCache.elementattributes.IsRemote=true jcs.region.accountDetailCache.elementattributes.IsSpool=true jcs.region.accountDetailCache.elementattributes.MaxLifeSeconds=1800 # Cache Region accountSettingsCache jcs.region.accountSettingsCache=DC,RCluster jcs.region.accountSettingsCache.cacheattributes=org.apache.jcs.engine.Co mpositeCacheAttributes jcs.region.accountSettingsCache.cacheattributes.MaxObjects=750 jcs.region.accountSettingsCache.cacheattributes.MemoryCacheName=org.apac he.jcs.engine.memory.lru.LRUMemoryCache jcs.region.accountSettingsCache.cacheattributes.ShrinkerIntervalSeconds= 300 jcs.region.accountSettingsCache.cacheattributes.UseMemoryShrinker=true jcs.region.accountSettingsCache.elementattributes=org.apache.jcs.engine. ElementAttributes jcs.region.accountSettingsCache.elementattributes.IdleTime=1000 jcs.region.accountSettingsCache.elementattributes.IsEternal=false jcs.region.accountSettingsCache.elementattributes.IsLateral=true jcs.region.accountSettingsCache.elementattributes.IsRemote=true jcs.region.accountSettingsCache.elementattributes.IsSpool=true jcs.region.accountSettingsCache.elementattributes.MaxLifeSeconds=1800 # Cache Region dbSubscriptionsCache jcs.region.dbSubscriptionsCache=DC,RCluster jcs.region.dbSubscriptionsCache.cacheattributes=org.apache.jcs.engine.Co mpositeCacheAttributes jcs.region.dbSubscriptionsCache.cacheattributes.MaxObjects=1000 jcs.region.dbSubscriptionsCache.cacheattributes.MemoryCacheName=org.apac he.jcs.engine.memory.lru.LRUMemoryCache jcs.region.dbSubscriptionsCache.elementattributes=org.apache.jcs.engine. ElementAttributes jcs.region.dbSubscriptionsCache.elementattributes.IdleTime=1000 jcs.region.dbSubscriptionsCache.elementattributes.IsEternal=false jcs.region.dbSubscriptionsCache.elementattributes.IsLateral=true jcs.region.dbSubscriptionsCache.elementattributes.IsRemote=true jcs.region.dbSubscriptionsCache.elementattributes.IsSpool=true jcs.region.dbSubscriptionsCache.elementattributes.MaxLifeSeconds=43200 # Cache Region genericObjectCache jcs.region.genericObjectCache=DC,RCluster jcs.region.genericObjectCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.genericObjectCache.cacheattributes.MaxObjects=1000 jcs.region.genericObjectCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.genericObjectCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.genericObjectCache.elementattributes.IdleTime=1000 jcs.region.genericObjectCache.elementattributes.IsEternal=false jcs.region.genericObjectCache.elementattributes.IsLateral=true jcs.region.genericObjectCache.elementattributes.IsRemote=true jcs.region.genericObjectCache.elementattributes.IsSpool=true jcs.region.genericObjectCache.elementattributes.MaxLifeSeconds=604800 # Cache Region overlapReportCache jcs.region.overlapReportCache=DC,RCluster jcs.region.overlapReportCache.cacheattributes=org.apache.jcs.engine.Comp ositeCacheAttributes jcs.region.overlapReportCache.cacheattributes.MaxObjects=500 jcs.region.overlapReportCache.cacheattributes.MemoryCacheName=org.apache .jcs.engine.memory.lru.LRUMemoryCache jcs.region.overlapReportCache.elementattributes=org.apache.jcs.engine.El ementAttributes jcs.region.overlapReportCache.elementattributes.IdleTime=1000 jcs.region.overlapReportCache.elementattributes.IsEternal=false jcs.region.overlapReportCache.elementattributes.IsLateral=true jcs.region.overlapReportCache.elementattributes.IsRemote=true jcs.region.overlapReportCache.elementattributes.IsSpool=true jcs.region.overlapReportCache.elementattributes.MaxLifeSeconds=1209600 # Cache Region priceCache jcs.region.priceCache=DC,RCluster jcs.region.priceCache.cacheattributes=org.apache.jcs.engine.CompositeCac heAttributes jcs.region.priceCache.cacheattributes.MaxObjects=5000 jcs.region.priceCache.cacheattributes.MemoryCacheName=org.apache.jcs.eng ine.memory.lru.LRUMemoryCache jcs.region.priceCache.cacheattributes.ShrinkerIntervalSeconds=300 jcs.region.priceCache.cacheattributes.UseMemoryShrinker=true jcs.region.priceCache.elementattributes=org.apache.jcs.engine.ElementAtt ributes jcs.region.priceCache.elementattributes.IdleTime=1000 jcs.region.priceCache.elementattributes.IsEternal=false jcs.region.priceCache.elementattributes.IsLateral=true jcs.region.priceCache.elementattributes.IsRemote=true jcs.region.priceCache.elementattributes.IsSpool=true jcs.region.priceCache.elementattributes.MaxLifeSeconds=7200 # Cache Region publicationScheduleCache jcs.region.publicationScheduleCache=DC,RCluster jcs.region.publicationScheduleCache.cacheattributes=org.apache.jcs.engin e.CompositeCacheAttributes jcs.region.publicationScheduleCache.cacheattributes.MaxObjects=4000 jcs.region.publicationScheduleCache.cacheattributes.MemoryCacheName=org. apache.jcs.engine.memory.lru.LRUMemoryCache jcs.region.publicationScheduleCache.cacheattributes.ShrinkerIntervalSeco nds=300 jcs.region.publicationScheduleCache.cacheattributes.UseMemoryShrinker=tr ue jcs.region.publicationScheduleCache.elementattributes=org.apache.jcs.eng ine.ElementAttributes jcs.region.publicationScheduleCache.elementattributes.IdleTime=1000 jcs.region.publicationScheduleCache.elementattributes.IsEternal=false jcs.region.publicationScheduleCache.elementattributes.IsLateral=true jcs.region.publicationScheduleCache.elementattributes.IsRemote=true jcs.region.publicationScheduleCache.elementattributes.IsSpool=true jcs.region.publicationScheduleCache.elementattributes.MaxLifeSeconds=100 0 # Cache Region unwantedWordsCache # Cache region is only used local (notremote setting) # Primary Disk Cache-- faster than the rest because of memory key storage jcs.auxiliary.DC.attributes.DiskPath=logs/rafNA jcs.auxiliary.DC.attributes.MaxKeySize=500000 jcs.auxiliary.DC.attributes.MaxPurgatorySize=100000 jcs.auxiliary.DC.attributes.MaxRecycleBinSize=50000 jcs.auxiliary.DC.attributes.OptimizeAtRemoveCount=-1 jcs.auxiliary.DC.attributes=org.apache.jcs.auxiliary.disk.indexed.Indexe dDiskCacheAttributes jcs.auxiliary.DC=org.apache.jcs.auxiliary.disk.indexed.IndexedDiskCacheF actory jcs.auxiliary.RCluster.attributes.ClusterServers=localhost:1101 jcs.auxiliary.RCluster.attributes.GetOnly=false jcs.auxiliary.RCluster.attributes.LocalClusterConsistency=true jcs.auxiliary.RCluster.attributes.RemoteTypeName=CLUSTER jcs.auxiliary.RCluster.attributes.RemoveUponRemotePut=false jcs.auxiliary.RCluster.attributes=org.apache.jcs.auxiliary.remote.Remote CacheAttributes jcs.auxiliary.RCluster=org.apache.jcs.auxiliary.remote.RemoteCacheFactor y -----Original Message----- From: Smuts, Aaron [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 19, 2007 10:51 PM To: JCS Users List Subject: RE: jcs 1.2.7.9.2 remote cache server UnmarshalException Send your cache.ccf files for the remote cache and local. I think that they are misconfigured. It's trying to de-serialize the object for some reason. ________________________________ From: Emilia Ipate [mailto:[EMAIL PROTECTED] Sent: Tuesday, June 19, 2007 11:54 AM To: jcs-users@jakarta.apache.org Subject: jcs 1.2.7.9.2 remote cache server UnmarshalException Hi, all! I am currently using jcs 1.2.7.9.2 and I have 2 remote Cache Servers (a Primary one, and a Failover one). The JCS 1.2.7.9.2 says that the Remote Cache Server now holds byte arrays, this normally means that the Remote Cache Server does not need in its classpath the classes of the objects he holds. But, everytime, I am trying to get a value (from the Remote Cache Server) for a key that does not exist in Remote Cache Server, I get the Exception below. So: 1. I get the exception everytime I am asking for a new key from the Remote Cache Server (new key = the key is not on the Remote Server) 2. my application sees the Primary Remote Cache Server as being down, at connects to the Failover Cache Server. 3. after a few seconds (2-4 seconds), the application connects back to the Primary Remote Cache Server. 4. nl.swets.wise.framework.account.cache.AccountCacheKey is Serialized and it is in the classpath of nl.swets.wise.framework.account.ejb.AccountSettingsBeanImpl Here is the entire exception: [6/19/07 17:22:49:109 CEST] 4edd4edd SystemOut O 2007-06-19 17:22:49,109 [Servlet.Engine.Transports : 0] ERROR org.apache.jcs.auxiliary.remote.RemoteCache - Disabling remote cache due to error: Failed to get [07391633 null null] from [accountSettingsCache] java.rmi.ServerException: RemoteException occurred in server thread; nested exception is: java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is: java.lang.ClassNotFoundException: nl.swets.wise.framework.account.cache.AccountCacheKey at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:310) at sun.rmi.transport.Transport$1.run(Transport.java:164) at java.security.AccessController.doPrivileged1(Native Method) at java.security.AccessController.doPrivileged(AccessController.java:389) at sun.rmi.transport.Transport.serviceCall(Transport.java:160) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:505) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTr ansport.java:837) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.ja va:911) at java.lang.Thread.run(Thread.java:568) at java.lang.Throwable.<init>(Throwable.java) at sun.rmi.transport.StreamRemoteCall.exceptionReceivedFromServer(StreamRem oteCall.java:264) at sun.rmi.transport.StreamRemoteCall.executeCall(StreamRemoteCall.java:240 ) at sun.rmi.server.UnicastRef.invoke(UnicastRef.java:149) at org.apache.jcs.auxiliary.remote.server.RemoteCacheServer_Stub.get(Unknow n Source) at org.apache.jcs.auxiliary.remote.RemoteCache.get(RemoteCache.java:249) at org.apache.jcs.auxiliary.remote.RemoteCacheNoWait.get(RemoteCacheNoWait. java:126) at org.apache.jcs.auxiliary.remote.RemoteCacheNoWaitFacade.get(RemoteCacheN oWaitFacade.java:151) at org.apache.jcs.engine.control.CompositeCache.get(CompositeCache.java:506 ) at org.apache.jcs.engine.control.CompositeCache.get(CompositeCache.java:413 ) at org.apache.jcs.access.CacheAccess.get(CacheAccess.java:195) at nl.swets.wise.framework.core.cache.JCS.JCSCache.get(JCSCache.java) at nl.swets.wise.framework.core.cache.JCS.JCSCacheManager.getCacheObject(JC SCacheManager.java) at nl.swets.wise.framework.account.ejb.AccountSettingsBeanImpl.getByAccount ID(AccountSettingsBeanImpl.java) at nl.swets.wise.framework.account.ejb.AccountMgmtBeanImpl.getAccountSettin gs(AccountMgmtBeanImpl.java:211) at nl.swets.wise.framework.user.ejb.UserManagementBeanImpl.login(UserManage mentBeanImpl.java:1257) at nl.swets.wise.framework.user.ejb.UserManagementBean.login(UserManagement Bean.java:153) at nl.swets.wise.framework.user.ejb.EJSRemoteStatelessUserManagement_3ad69d 3a.login(EJSRemoteStatelessUserManagement_3ad69d3a.java:200) at nl.swets.wise.framework.user.ejb._UserManagement_Stub.login(_UserManagem ent_Stub.java:482) at nl.swets.wise.framework.user.ejb.UserManagementAccessBean.login(UserMana gementAccessBean.java:87) at nl.swets.wise.common.user.ui.LoginAction.execute(LoginAction.java:266) at org.apache.struts.action.RequestProcessor.processActionPerform(RequestPr ocessor.java:484) at nl.swets.wise.struts.SwetsRequestProcessor.processActionPerform(SwetsReq uestProcessor.java:65) at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java: 274) at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1482) at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525) at javax.servlet.http.HttpServlet.service(HttpServlet.java:760) at javax.servlet.http.HttpServlet.service(HttpServlet.java:853) at com.ibm.ws.webcontainer.servlet.StrictServletInstance.doService(StrictSe rvletInstance.java:110) at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet._service(StrictLi fecycleServlet.java:174) at com.ibm.ws.webcontainer.servlet.IdleServletState.service(StrictLifecycle Servlet.java:313) at com.ibm.ws.webcontainer.servlet.StrictLifecycleServlet.service(StrictLif ecycleServlet.java:116) at com.ibm.ws.webcontainer.servlet.ServletInstance.service(ServletInstance. java:283) at com.ibm.ws.webcontainer.servlet.ValidServletReferenceState.dispatch(Vali dServletReferenceState.java:42) at com.ibm.ws.webcontainer.servlet.ServletInstanceReference.dispatch(Servle tInstanceReference.java:40) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.handleWebAppDispa tch(WebAppRequestDispatcher.java:1019) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.dispatch(WebAppRe questDispatcher.java:592) at com.ibm.ws.webcontainer.webapp.WebAppRequestDispatcher.forward(WebAppReq uestDispatcher.java:204) at com.ibm.ws.webcontainer.srt.WebAppInvoker.doForward(WebAppInvoker.java:1 25) at com.ibm.ws.webcontainer.srt.WebAppInvoker.handleInvocationHook(WebAppInv oker.java:286) at com.ibm.ws.webcontainer.cache.invocation.CachedInvocation.handleInvocati on(CachedInvocation.java:71) at com.ibm.ws.webcontainer.cache.invocation.CacheableInvocationContext.invo ke(CacheableInvocationContext.java:116) at com.ibm.ws.webcontainer.srp.ServletRequestProcessor.dispatchByURI(Servle tRequestProcessor.java:186) at com.ibm.ws.webcontainer.oselistener.OSEListenerDispatcher.service(OSELis tener.java:334) at com.ibm.ws.webcontainer.http.HttpConnection.handleRequest(HttpConnection .java:56) at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java: 615) at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:439) at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java) Caused by: java.rmi.UnmarshalException: error unmarshalling arguments; nested exception is: java.lang.ClassNotFoundException: nl.swets.wise.framework.account.cache.AccountCacheKey at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:270) at sun.rmi.transport.Transport$1.run(Transport.java:164) at java.security.AccessController.doPrivileged1(Native Method) at java.security.AccessController.doPrivileged(AccessController.java:389) at sun.rmi.transport.Transport.serviceCall(Transport.java:160) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:505) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTr ansport.java:837) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.ja va:911) at java.lang.Thread.run(Thread.java:568) Caused by: java.lang.ClassNotFoundException: nl.swets.wise.framework.account.cache.AccountCacheKey at java.net.URLClassLoader.findClass(URLClassLoader.java:376) at java.lang.ClassLoader.loadClass(ClassLoader.java) at java.lang.ClassLoader.loadClass(ClassLoader.java:504) at java.lang.Class.forName0(Native Method) at java.lang.Class.forName(Class.java) at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java) at sun.rmi.server.LoaderHandler.loadClass(LoaderHandler.java) at java.rmi.server.RMIClassLoader$2.loadClass(RMIClassLoader.java) at java.rmi.server.RMIClassLoader.loadClass(RMIClassLoader.java) at sun.rmi.server.MarshalInputStream.resolveClass(MarshalInputStream.java) at java.io.ObjectInputStream.readNonProxyDesc(ObjectInputStream.java) at java.io.ObjectInputStream.readClassDesc(ObjectInputStream.java) at java.io.ObjectInputStream.readOrdinaryObject(ObjectInputStream.java) at java.io.ObjectInputStream.readObject0(ObjectInputStream.java) at java.io.ObjectInputStream.readObject(ObjectInputStream.java) at sun.rmi.server.UnicastRef.unmarshalValue(UnicastRef.java:313) at sun.rmi.server.UnicastServerRef.dispatch(UnicastServerRef.java:264) at sun.rmi.transport.Transport$1.run(Transport.java:164) at java.security.AccessController.doPrivileged1(Native Method) at java.security.AccessController.doPrivileged(AccessController.java:389) at sun.rmi.transport.Transport.serviceCall(Transport.java:160) at sun.rmi.transport.tcp.TCPTransport.handleMessages(TCPTransport.java:505) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.handleRequest(TCPTr ansport.java:837) at sun.rmi.transport.tcp.TCPTransport$ConnectionHandler.run(TCPTransport.ja va:911) at java.lang.Thread.run(Thread.java:568) And here it connects to the Failover Remote Cache Server: class load: org/apache/jcs/engine/ZombieCacheService class load: org/apache/jcs/auxiliary/remote/ZombieRemoteCacheService class load: org/apache/jcs/utils/struct/BoundedQueue [6/19/07 17:22:49:124 CEST] 4edd4edd SystemOut O 2007-06-19 17:22:49,124 [Servlet.Engine.Transports : 0] DEBUG org.apache.jcs.auxiliary.remote.RemoteCacheMonitor - Notified of an error. [6/19/07 17:22:49:124 CEST] 4edd4edd SystemOut O 2007-06-19 17:22:49,124 [Servlet.Engine.Transports : 0] DEBUG org.apache.jcs.auxiliary.remote.RemoteCache - Initiating failover, rcnf = RemoteCacheNoWaitFacade: accountSettingsCache, rca = RemoteCacheAttributes remoteHost = [localhost] remotePort = [1102] cacheName = [accountSettingsCache] removeUponRemotePut = [true] getOnly = [false] receive = [true] getTimeoutMillis = [-1] threadPoolName = [remote_cache_client] remoteType = [0] localClusterConsistency = [false] zombieQueueMaxSize = [1000] [6/19/07 17:22:49:140 CEST] 4edd4edd SystemOut O 2007-06-19 17:22:49,140 [Servlet.Engine.Transports : 0] DEBUG org.apache.jcs.auxiliary.remote.RemoteCache - Found facade, calling failover [6/19/07 17:22:49:140 CEST] 4edd4edd SystemOut O 2007-06-19 17:22:49,140 [Servlet.Engine.Transports : 0] INFO org.apache.jcs.auxiliary.remote.RemoteCacheNoWaitFacade - in failover for 0 class load: org/apache/jcs/auxiliary/remote/RemoteCacheFailoverRunner [6/19/07 17:22:49:156 CEST] 4edd4edd SystemOut O 2007-06-19 17:22:49,156 [Servlet.Engine.Transports : 0] DEBUG org.apache.jcs.auxiliary.remote.RemoteCacheNoWaitFacade - Failed to get. [6/19/07 17:22:49:156 CEST] 3e9e3e9e SystemOut O 2007-06-19 17:22:49,156 [Thread-28] INFO org.apache.jcs.auxiliary.remote.RemoteCacheFailoverRunner - Remote cache FAILOVER RUNNING. [6/19/07 17:22:49:156 CEST] 3e9e3e9e SystemOut O 2007-06-19 17:22:49,156 [Thread-28] DEBUG org.apache.jcs.auxiliary.remote.RemoteCacheFailoverRunner - fidx = 0 failovers.length = 2 [6/19/07 17:22:49:156 CEST] 3e9e3e9e SystemOut O 2007-06-19 17:22:49,156 [Thread-28] DEBUG org.apache.jcs.auxiliary.remote.RemoteCacheFailoverRunner - stating at failover i = 0 [6/19/07 17:22:49:171 CEST] 3e9e3e9e SystemOut O 2007-06-19 17:22:49,156 [Thread-28] DEBUG org.apache.jcs.auxiliary.remote.RemoteCacheFailoverRunner - Trying server [localhost:1101] at failover index i = 0 [6/19/07 17:22:49:171 CEST] 3e9e3e9e SystemOut O 2007-06-19 17:22:49,171 [Thread-28] DEBUG org.apache.jcs.auxiliary.remote.RemoteCacheFailoverRunner - RemoteCacheAttributes for failover = RemoteCacheAttributes remoteHost = [localhost] remotePort = [1101] cacheName = [accountSettingsCache] removeUponRemotePut = [true] getOnly = [false] receive = [true] getTimeoutMillis = [-1] threadPoolName = [remote_cache_client] remoteType = [0] localClusterConsistency = [false] zombieQueueMaxSize = [1000] [6/19/07 17:22:49:171 CEST] 3e9e3e9e SystemOut O 2007-06-19 17:22:49,171 [Thread-28] DEBUG org.apache.jcs.auxiliary.remote.RemoteCacheFailoverRunner - Trying server [localhost:1102] at failover index i = 1 Might there be a bug in JCS 1.2.7.9.2 that generates the exception above, something like: - the first time you request for a key, instead of returning null, it tries to convert the empty by array to AccountCacheKey? - Does the JCS 1.2.7.9.2 still need the AccountCacheKey in it's classpath even though it says that (http://jakarta.apache.org/jcs/changes-report.html )"The remote cache now sends a byte array to the server instead of the class. This allows you to run the remote server without copies of your objects in its classpath. This makes the remote server far easier to use." ??? Please give me an advise, Emilia --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]