CKEditor caching
All CKEditor resources are served by a org.onehippo.cms7.utilities.servlet.ResourceServlet that is configured in the web.xml file of the CMS application.
Excerpt of cms/src/main/webapp/WEB-INF/web.xml:
<servlet> <servlet-name>CKEditorResourceServlet</servlet-name> <servlet-class>org.onehippo.cms7.utilities.servlet.ResourceServlet</servlet-class> </servlet>
The servlet sets these cache related response headers at around one year from now:
Expires: currentTimeMillis + 31556926000 Cache-Control" "max-age=31556926"
For cache busting, CKEditor has its own resource loader with its own cache-buster logic. Each time the application server is restarted, a unique value for CKEDITOR.timestamp is generated. CKEditor's resource loader automatically appends this timestamp value as a query parameter to all requests, so newer resources (both from the CKEditor core as well as custom plugins) will always be fetched.