Rahul Sharma
Rahul Sharma

Reputation: 912

Cache Busting in Spring Boot + Thymeleaf application

I read spring boot documentation and it seems that if I am using Thymeleaf, I can just add the following to my application.properties file to achieve cache busting:

spring.resources.chain.strategy.content.enabled=true
spring.resources.chain.strategy.content.paths=/**

But it doesn't work!

This is the error that I see:

Caused by: org.springframework.beans.factory.BeanCreationException: Could not autowire field: private org.springframework.boot.autoconfigure.web.ResourceProperties org.springframework.boot.autoconfigure.web.WebMvcAutoConfiguration$WebMvcAutoConfigurationAdapter.resourceProperties; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'spring.resources.CONFIGURATION_PROPERTIES': Could not bind properties to [unknown] (target=spring.resources, ignoreInvalidFields=false, ignoreUnknownFields=false, ignoreNestedProperties=false); nested exception is org.springframework.beans.NotWritablePropertyException: Invalid property 'chain[strategy][fixed][version]' of bean class [org.springframework.boot.autoconfigure.web.ResourceProperties]: Cannot access indexed value in property referenced in indexed property path 'chain[strategy][fixed][version]'; nested exception is org.springframework.beans.NotReadablePropertyException: Invalid property 'chain[strategy][fixed][version]' of bean class [org.springframework.boot.autoconfigure.web.ResourceProperties]: Bean property 'chain[strategy][fixed][version]' is not readable or has an invalid getter method: Does the return type of the getter match the parameter type of the setter?

What am I missing?

Upvotes: 3

Views: 1963

Answers (1)

Rahul Sharma
Rahul Sharma

Reputation: 912

The problem was with the version of spring boot I was using. Spring Boot 1.2 doesn't have any such properties while 1.3 does.

Upvotes: 5

Related Questions