ConcurrentMapCacheManager's setCacheNames(…) transitively calls isAllowNullValues() which can be influenced by setAllowNullValues(…). This means the order of the setter calls becomes important and is not guaranteed when the type is used in XML configuration.
We've got a similar issue reported for Spring Data Redis (see DATAREDIS-328) and decided to provide a dedicated FactoryBean for usage in XML.
Affects: 3.2.10, 4.0.6, 4.1 RC1
#16736 GuavaCacheManager ignores cache specification due to eager initialization of internal cache map with static cache names
DATAREDIS-328 RedisCacheManager should not instantiate caches in setCacheNames()