One thing that looks suspicious to me is this section:
Is your
Java source code really under the directory defined as ${web.dir}? I know it's not standardized or anything, but I usually put source under something like ${src.dir}, and let ${web.dir} contain html, jsps, etc.