Deploying unpacked webapp from outside of tomcat, via manager: Presence of a bad symlink in WEB-INF/lib makes the deployment stop early, with only some of the application files copied to /var/lib/tomcat-6/webapps. There seem to be no warnings generated. In my case, I did not get the "classes" directory copied over, and (unsurprisingly), the classloader complained that it could not find my classes when I tried to invoke my servlet. Reproducible: Always Steps to Reproduce: cd /tmp 270 mkdir test1 271 mkdir -p test1/WEB-INF/lib 272 mkdir -p test1/WEB-INF/classes 273 touch test1/WEB-INF/lib/foo.jar 274 touch test1/WEB-INF/classes/bar.class 275 echo deploy via manager GUI at contextpath /tester, url file:/tmp/test1 276 ls -R /var/lib/tomcat-6/webapps/tester/* (will need to be root or tomcat) 278 ln -sf /nosuchfile test1/WEB-INF/lib/badlink.jar 279 echo undeploy then redeploy as before, via GUI. 280 echo it says 'ok' and manager logs say nothing exciting 281 ls -R /var/lib/tomcat-6/webapps/tester/* 282 echo this time, there is no "classes" Actual Results: First ls shows that the entire subdirectory is copied over. After the bad symlink is added and I redeploy, we see that the copying was apparently aborted midway through, probably when it reached the bad link. Expected Results: Manager ought to have said it failed to deploy the application, and it should have written some kind of error to its logs. If kind, it would indicate the offending file and path. I am running a fresh Gentoo install, with ~amd64, and using tomcat-6.0.14-r1. Suspect this is an Apache problem, but not sure. Also, I don't know whether the bug may have existed in earlier versions, as my symlinks broke during a machine and OS upgrade.
From the sounds of this I believe this is a Tomcat bug, not specific to Tomcat running on Gentoo Linux. Or a result of how it's packaged or etc. It might be, if it's our fault the broken symlink is created in the first place. Otherwise Tomcat is pretty notorious, at least from my experience, on dealing with broken symlinks horribly. I haven't tried it with 6.0.x, but any 5.x version if you place a broken symlink in any of Tomcat's lib dirs with jars, like common/lib or server/lib. Tomcat will fail to start, and give pathetic, if any log output. Most always nothing even hinting at a cnfe, or broken link, or etc. Unless we can determine the broken symlink is caused by something we do to Tomcat on gentoo as part of it being packaged. Or as a result of running on this distro/OS, etc specifically. Then it's an upstream bug for them to resolve.
No comment or response from reporter, assuming problem is not specific to tomcat on Gentoo. Closing as invaild, please reopen if problem persists and is specific to Tomcat on Gentoo.