Today I ran into the same problem, and using exploding .war just didn't cut it for me.
My solution was also to use the following context.xml file in Tomcat ( $CATALINA_BASE\conf\context.xml ):
<Context reloadable="true"> <Resources cachingAllowed="false" cacheMaxSize="0" /> <WatchedResource>WEB-INF/web.xml</WatchedResource> <WatchedResource>${catalina.base}/conf/web.xml</WatchedResource> <Manager pathname="" /> </Context>
I also used the following in my Jsp for client-side cache:
<% response.setHeader("Cache-Control","no-cache"); //HTTP 1.1 response.setHeader("Pragma","no-cache"); //HTTP 1.0 response.setDateHeader ("Expires", 0); %>
after rebooting tomcat, you could just copy Jsp to $CATALINA_BASE\webapps\<context>\WEB-INF\...
and do a quick reboot (F5) in my browser to see the changes.
Bonus: Tomcat also reloads all its resources when I copy .class or .jar files to / WEB -INF now :)
subject42 Oct 11 '17 at 14:10 2017-10-11 14:10
source share