# Two more places the annotation is ignored without a warning @Cacheable on a protected method, called twice -> 2 repository calls No warning is logged. In proxy mode the annotation is only honoured on public methods; a protected one is simply never advised. --- @EnableCaching attributes, as the class file declares them --- AdviceMode mode() int order() boolean proxyTargetClass() There is no exposeProxy attribute, so @EnableCaching(exposeProxy = true) - which a lot of answers recommend - does not compile.