In my Spring3Appliation, user can upload his picture. The uploaded picture does not show up on the view profile page. But if I restart Tomcat multiple times, it would show up, without any code changes.
I also tried to load the picture url in the browser directly, but that also gives a "is not available" error.
The images are in a folder which is at the same level as WEB-INF and not within WEB-INF
I have made the following property false: catalina.properties->tomcat.util.buf.StringCache.enabled, but no help.
Since even the browser does not show the image when directly loaded, I am assuming that it is a tomcat problem, and not the applicaton.
Sample urls being tried:
where tms is the context of the application
Before you do anything else, move the upload directory.
You should never write into a deployed WAR. It's not supported by the J2EE standard, it won't even work on some servers and on servers like Tomcat where it (sometimes) does, you'll still end up in a lot of pain because updating the webapp can cause your uploaded data to be destroyed.
Always store uploaded files in a directory that is external to both Tomcat and the WARs.
An IDE is no substitute for an Intelligent Developer.