Error added: 2008-03-27T12:04:45Z
Cause: One or both of the directories temp and work are missing or a link to them is missing or broken. Solution: Create directories and/or links. Details vary based on your specific installation. Details: Normally, in a straightforward installation, temp and work are located in tomcat\'s home directory (CATALINA_HOME). If they are deleted, tomcat simply replaces them. But problems arise when installers get clever and start moving things around and creating links to them. For example, a listing of the tomcat6 home directory on Fedora 9, using yum, looks like this: drwxr-xr-x 2 root root 4096 2008-09-12 22:54 bin lrwxrwxrwx 1 root root 12 2008-09-12 22:53 conf -> /etc/tomcat6 lrwxrwxrwx 1 root root 23 2008-09-12 22:53 lib -> /usr/share/java/tomcat6 lrwxrwxrwx 1 root root 16 2008-09-12 22:53 logs -> /var/log/tomcat6 lrwxrwxrwx 1 root root 23 2008-09-12 22:53 temp -> /var/cache/tomcat6/temp lrwxrwxrwx 1 root root 24 2008-09-12 22:53 webapps -> /var/lib/tomcat6/webapps lrwxrwxrwx 1 root root 23 2008-09-12 22:53 work -> /var/cache/tomcat6/work Note that temp and work both point to subdirectories of /var/cache/tomcat6. If either a subdirectory or /var/cache/tomcat6 is deleted, tomcat will be unable to create it because it can\'t replace a link named temp or work with a directory of the same name because they are owned by root and because it probably wouldn\'t know to create it anyway, because [CATALINA_HOME]/temp and [CATALINA_HOME]/work already exist. It just can\'t use them because they\'re not directories. They are links to directories that don\'t exist. So for this installation, the directories need to be re-created as follows: PATH OWNER GROUP PERMISSIONS /var/cache/tomcat6 root root drwxr-xr-x /var/cache/tomcat6/temp root tomcat drwxrwxr-- /var/cache/tomcat6/temp root tomcat drwxrwxr--
[Solved for Me]. Changing the ownership of my work directory fixed the problem. I guess you can also get away with changing the permissions on the work directory and get the same effect.
[Solved for Me] If tomcat is running as a service or started by ROOT the temp work and deploy folders could be owned by root. If you later re-deploy an application and restart tomcat as a non root user this user cannot update the originally deployed app. chown -R <tomcat-user> <catalina home> as root to resolve. Happy Tomcatting
According to answer 1, our solution was a wrong workdir configuration for the Context in conf/server.xml.
In My case, CATALINA_HOME/work/Catalina/localhost/myApp had a ownership to some other than tomcat running user, so I just removed the folder (rm -r myApp) and re-started tomcat . Thanks
org.apache.jasper.JasperException: java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name \'on\' available as request attribute
This could also be caused by incorrect permissions on the same directories. Make sure they are the same as those shown above.
Tomcat 7.0.14 didn't create the directories under [CATALINA_HOME]/work. a) I created the directories by hand /usr/local/apache-tomcat-7.0.14/work/Catalina/localhost: /usr/local/apache-tomcat-7.0.14/work/Catalina/localhost/_ /usr/local/apache-tomcat-7.0.14/work/Catalina/localhost/docs /usr/local/apache-tomcat-7.0.14/work/Catalina/localhost/examples /usr/local/apache-tomcat-7.0.14/work/Catalina/localhost/host-manager /usr/local/apache-tomcat-7.0.14/work/Catalina/localhost/manager b) ran `chown tomcat:tomcat -c -R [CATALINA_HOME]/work` c) `chmod 0777 -c -R [CATALINA_HOME]/work` (Error messages only go away with full perms. (This is a variant to Answer #698)
If you know the answer, please add your own solution below.
If you don't know, but find out later, please come back and share your answer - there will be other people
struggling with this too.
If you want to be notified via email when this is solved, enter your email address here: