Note that transient property values are not affected when you invalidate a cache manually. This is because transient properties are generally not backed by any value in the database.

If you want to use a transient property and have its value be cleared at the same time as the persistent properties are cleared from the cache, you can do so by creating a class that implements the atg.repository.PropertiesChangedListener interface. Your class’s propertiesChanged method can explicitly remove cache property values, when the PropertiesChangedEvent is of type CACHE_INVALIDATE. In the PropertiesChangedListener class, you can cast your RepositoryItem to an atg.repository.RepositoryItemImpl and can call the removePropertyValueFromCache method to invalidate whichever properties you want.

 
loading table of contents...